diff --git a/.circleci/config.yml b/.circleci/config.yml index 50b2a94304..3fce527312 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -38,16 +38,6 @@ jobs: - run: "bundle add jazzy" - run: "bundle exec fastlane linting_tests" - lint-fauxpas: - macos: - xcode: 11.7.0 # Specify the Xcode version to use - - steps: - - checkout - - run: "bundle install" - - run: "brew cask install fauxpas" - - run: "bundle exec fastlane lint_fauxpas" - test-legacy-11: macos: xcode: 11.7.0 # Specify the Xcode version to use @@ -77,6 +67,5 @@ workflows: - integration-tests - linting-tests - ui-and-analyze-tests - - lint-fauxpas - test-legacy-11 - test-legacy-12 diff --git a/.jazzy.yaml b/.jazzy.yaml index 2fea1ff6fb..fc063a4efa 100644 --- a/.jazzy.yaml +++ b/.jazzy.yaml @@ -4,7 +4,7 @@ output: docs/docs clean: true objc: true umbrella_header: Stripe/PublicHeaders/Stripe/Stripe.h -framework_root: . +framework_root: Stripe sdk: iphonesimulator author: Stripe author_url: https://stripe.com @@ -17,3 +17,6 @@ theme: fullwidth exclude: - Stripe/PublicHeaders/Stripe/STD* - Stripe/PublicHeaders/Stripe/Stripe3DS2.h + - InternalFrameworks/dynamic/Stripe3DS2.xcframework/** + - build* + - .git diff --git a/InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-simulator/libStripe3DS2-static-sim.a b/InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-simulator/libStripe3DS2-static-sim.a deleted file mode 100644 index 52ff886c15..0000000000 Binary files a/InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-simulator/libStripe3DS2-static-sim.a and /dev/null differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/Info.plist b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/Info.plist new file mode 100644 index 0000000000..758b507543 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/Info.plist @@ -0,0 +1,54 @@ + + + + + AvailableLibraries + + + LibraryIdentifier + ios-x86_64-maccatalyst + LibraryPath + Stripe3DS2.framework + SupportedArchitectures + + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + maccatalyst + + + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + Stripe3DS2.framework + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + LibraryIdentifier + ios-arm64 + LibraryPath + Stripe3DS2.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + ios + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Assets.car b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Assets.car new file mode 100644 index 0000000000..2ce364d9a9 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Assets.car differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h new file mode 100644 index 0000000000..c39a85d8cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h @@ -0,0 +1,22 @@ +// +// STDSAlreadyInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSAlreadyInitializedException` represents an exception that will be thrown in the `STDSThreeDS2Service` instance has already been initialized. + + @see STDSThreeDS2Service + */ +@interface STDSAlreadyInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h new file mode 100644 index 0000000000..766e48578c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h @@ -0,0 +1,68 @@ +// +// STDSAuthenticationRequestParameters.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface STDSAuthenticationRequestParameters : NSObject + +/** + Designated initializer for `STDSAuthenticationRequestParameters`. + + @param sdkTransactionIdentifier The SDK Transaction Identifier, as created by `[STDSTransaction createTransaction]` + @param deviceData Optional device data collected by the SDK. + @param sdkEphemeralPublicKey The SDK ephemeral public key. + @param sdkAppIdentifier The SDK app identifier. + @param sdkReferenceNumber The SDK reference number. + @param messageVersion The protocol version that is supported by the SDK and used for the transaction. + + @exception InvalidInputException Thrown if an input parameter is invalid. @see InvalidInputException + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)sdkTransactionIdentifier + deviceData:(nullable NSString *)deviceData + sdkEphemeralPublicKey:(NSString *)sdkEphemeralPublicKey + sdkAppIdentifier:(NSString *)sdkAppIdentifier + sdkReferenceNumber:(NSString *)sdkReferenceNumber + messageVersion:(NSString *)messageVersion; + +/** + The encrypted device data as a JWE string. + */ +@property (nonatomic, readonly, nullable) NSString *deviceData; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The SDK App Identifier. + */ +@property (nonatomic, readonly) NSString *sdkAppIdentifier; + +/** + The SDK reference number. + */ +@property (nonatomic, readonly) NSString *sdkReferenceNumber; + +/** + The SDK ephemeral public key. + */ +@property (nonatomic, readonly) NSString *sdkEphemeralPublicKey; + +/** + The protocol version that is used for the transaction. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h new file mode 100644 index 0000000000..d527f38df9 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h @@ -0,0 +1,115 @@ +// +// STDSAuthenticationResponse.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSACSStatusType` enum defines the status of a transaction, as detailed in + 3DS2 Spec Seq 3.33: + */ +typedef NS_ENUM(NSInteger, STDSACSStatusType) { + /// The status is unknown or invalid + STDSACSStatusTypeUnknown = 0, + + /// Authenticated + STDSACSStatusTypeAuthenticated = 1, + + /// Requires a Cardholder challenge to complete authentication + STDSACSStatusTypeChallengeRequired = 2, + + /// Requires a Cardholder challenge using Decoupled Authentication + STDSACSStatusTypeDecoupledAuthentication = 3, + + /// Not authenticated + STDSACSStatusTypeNotAuthenticated = 4, + + /// Not authenticated, but a proof of authentication attempt (Authentication Value) + /// was generated + STDSACSStatusTypeProofGenerated = 5, + + /// Not authenticated, as authentication could not be performed due to technical or + /// other issue + STDSACSStatusTypeError = 6, + + /// Not authenticated because the Issuer is rejecting authentication and requesting + /// that authorisation not be attempted + STDSACSStatusTypeRejected = 7, + + /// Authentication not requested by the 3DS Server for data sent for informational + /// purposes only + STDSACSStatusTypeInformationalOnly = 8, +}; + +/** + A native protocol representing the response sent by the 3DS Server. + Only parameters relevant to performing 3DS2 authentication in the mobile SDK are exposed. + */ +@protocol STDSAuthenticationResponse + +/// Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction. +@property (nonatomic, readonly) NSString *threeDSServerTransactionID; + +/// Transaction status +@property (nonatomic, readonly) STDSACSStatusType status; + +/// Indication of whether a challenge is required. +@property (nonatomic, readonly, getter=isChallengeRequired) BOOL challengeRequired; + +/// Indicates whether the ACS confirms utilisation of Decoupled Authentication and agrees to utilise Decoupled Authentication to authenticate the Cardholder. +@property (nonatomic, readonly) BOOL willUseDecoupledAuthentication; + +/** + DS assigned ACS identifier. + Each DS can provide a unique ID to each ACS on an individual basis. + */ +@property (nonatomic, readonly, nullable) NSString *acsOperatorID; + +/// Unique identifier assigned by the EMVCo Secretariat upon Testing and Approval. +@property (nonatomic, readonly, nullable) NSString *acsReferenceNumber; + +/// Contains the JWS object (represented as a string) created by the ACS for the ARes message. +@property (nonatomic, readonly, nullable) NSString *acsSignedContent; + +/// Universally Unique transaction identifier assigned by the ACS to identify a single transaction. +@property (nonatomic, readonly) NSString *acsTransactionID; + +/// Fully qualified URL of the ACS to be used for the challenge. +@property (nonatomic, readonly, nullable) NSURL *acsURL; + +/** + Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction. The Issuer can provide information to Cardholder. + For example, “Additional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.” + */ +@property (nonatomic, readonly, nullable) NSString *cardholderInfo; + +/// EMVCo-assigned unique identifier to track approved DS. +@property (nonatomic, readonly, nullable) NSString *directoryServerReferenceNumber; + +/// Universally unique transaction identifier assigned by the DS to identify a single transaction. +@property (nonatomic, readonly, nullable) NSString *directoryServerTransactionID; + +/** + Protocol version identifier This shall be the Protocol Version Number of the specification utilised by the system creating this message. + The Message Version Number is set by the 3DS Server which originates the protocol with the AReq message. + The Message Version Number does not change during a 3DS transaction. + */ +@property (nonatomic, readonly) NSString *protocolVersion; + +/// Universally unique transaction identifier assigned by the 3DS SDK to identify a single transaction. +@property (nonatomic, readonly) NSString *sdkTransactionID; + +@end + +/// A utility to parse an STDSAuthenticationResponse from JSON +id _Nullable STDSAuthenticationResponseFromJSON(NSDictionary *json); + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSButtonCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSButtonCustomization.h new file mode 100644 index 0000000000..dd63f9820a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSButtonCustomization.h @@ -0,0 +1,83 @@ +// +// STDSButtonCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// +#import +#import + +#import "STDSCustomization.h" + +/// An enum that defines the different types of buttons that are able to be customized. +typedef NS_ENUM(NSInteger, STDSUICustomizationButtonType) { + + /// The submit button type. + STDSUICustomizationButtonTypeSubmit = 0, + + /// The continue button type. + STDSUICustomizationButtonTypeContinue = 1, + + /// The next button type. + STDSUICustomizationButtonTypeNext = 2, + + /// The cancel button type. + STDSUICustomizationButtonTypeCancel = 3, + + /// The resend button type. + STDSUICustomizationButtonTypeResend = 4, +}; + +/// An enumeration of the case transformations that can be applied to the button's title +typedef NS_ENUM(NSInteger, STDSButtonTitleStyle) { + /// Default style, doesn't modify the title + STDSButtonTitleStyleDefault, + + /// Applies localizedUppercaseString to the title + STDSButtonTitleStyleUppercase, + + /// Applies localizedLowercaseString to the title + STDSButtonTitleStyleLowercase, + + /// Applies localizedCapitalizedString to the title + STDSButtonTitleStyleSentenceCapitalized, +}; + +NS_ASSUME_NONNULL_BEGIN + +/// A customization object to use to configure the UI of a button. +@interface STDSButtonCustomization: STDSCustomization + +/// The default settings for the provided button type. ++ (instancetype)defaultSettingsForButtonType:(STDSUICustomizationButtonType)type; + +/** + Initializes an instance of STDSButtonCustomization with the given backgroundColor and colorRadius. + */ +- (instancetype)initWithBackgroundColor:(UIColor *)backgroundColor cornerRadius:(CGFloat)cornerRadius; + +/** + This is unavailable because there are no sensible default property values without a button type. + Use `defaultSettingsForButtonType:` or `initWithBackgroundColor:cornerRadius:` instead. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The background color of the button. + The default for .resend and .cancel is clear. + The default for .submit, .continue, and .next is blue. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The corner radius of the button. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/** + The capitalization style of the button title + */ +@property (nonatomic) STDSButtonTitleStyle titleStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeParameters.h new file mode 100644 index 0000000000..e1aa151cdc --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeParameters.h @@ -0,0 +1,61 @@ +// +// STDSChallengeParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@protocol STDSAuthenticationResponse; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSChallengeParameters` contains information from the 3DS Server's + authentication response that are used by the 3DS2 SDK to initiate + the challenge flow. + */ +@interface STDSChallengeParameters : NSObject + +/** + Convenience intiializer to create an instace of `STDSChallengeParameters` from an + `STDSAuthenticationResponse` + */ +- (instancetype)initWithAuthenticationResponse:(id)authResponse; + +/** + Transaction identifier assigned by the 3DS Server to uniquely identify + a transaction. + */ +@property (nonatomic, copy) NSString *threeDSServerTransactionID; + +/** + Transaction identifier assigned by the Access Control Server (ACS) + to uniquely identify a transaction. + */ +@property (nonatomic, copy) NSString *acsTransactionID; + +/** + The reference number of the relevant Access Control Server. + */ +@property (nonatomic, copy) NSString *acsReferenceNumber; + +/** + The encrypted message sent by the Access Control Server + containing the ACS URL, epthemeral public key, and the + 3DS2 SDK ephemeral public key. + */ +@property (nonatomic, copy) NSString *acsSignedContent; + +/** + The URL for the application that is requesting 3DS2 verification. + This property can be optionally set and will be included with the + messages sent to the Directory Server during the challenge flow. + */ +@property (nonatomic, copy, nullable) NSString *threeDSRequestorAppURL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h new file mode 100644 index 0000000000..a06a32bb93 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h @@ -0,0 +1,61 @@ +// +// STDSChallengeStatusReceiver.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +@class STDSTransaction, STDSCompletionEvent, STDSRuntimeErrorEvent, STDSProtocolErrorEvent; + +NS_ASSUME_NONNULL_BEGIN + +/** + Implement the `STDSChallengeStatusReceiver` protocol to receive challenge status notifications at the end of the challenge process. + @see `STDSTransaction.doChallenge` + */ +@protocol STDSChallengeStatusReceiver + +/** + Called when the challenge process is completed. + + @param completionEvent Information about the completion of the challenge process. @see `STDSCompletionEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didCompleteChallengeWithCompletionEvent:(STDSCompletionEvent *)completionEvent; + +/** + Called when the user selects the option to cancel the transaction on the challenge screen. + */ +- (void)transactionDidCancel:(STDSTransaction *)transaction; + +/** + Called when the challenge process reaches or exceeds the timeout interval that was passed to `STDSTransaction.doChallenge` + */ +- (void)transactionDidTimeOut:(STDSTransaction *)transaction; + +/** + Called when the 3DS SDK receives an EMV 3-D Secure protocol-defined error message from the ACS. + + @param protocolErrorEvent The error code and details. @see `STDSProtocolErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithProtocolErrorEvent:(STDSProtocolErrorEvent *)protocolErrorEvent; + +/** + Called when the 3DS SDK encounters errors during the challenge process. These errors include all errors except those covered by `didErrorWithProtocolErrorEvent`. + + @param runtimeErrorEvent The error code and details. @see `STDSRuntimeErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithRuntimeErrorEvent:(STDSRuntimeErrorEvent *)runtimeErrorEvent; + +@optional + +/** + Optional method that will be called when the transaction displays a new challenge screen. + */ +- (void)transactionDidPresentChallengeScreen:(STDSTransaction *)transaction; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCompletionEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCompletionEvent.h new file mode 100644 index 0000000000..851c71dbe2 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCompletionEvent.h @@ -0,0 +1,40 @@ +// +// STDSCompletionEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSCompletionEvent` contains information about completion of the challenge process. + */ +@interface STDSCompletionEvent : NSObject + +/** + Designated initializer for `STDSCompletionEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier transactionStatus:(NSString *)transactionStatus NS_DESIGNATED_INITIALIZER; + +/** + `STDSCompletionEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The SDK Transaction ID. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The transaction status that was received in the final challenge response. + */ +@property (nonatomic, readonly) NSString *transactionStatus; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSConfigParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSConfigParameters.h new file mode 100644 index 0000000000..4d77ba5d5a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSConfigParameters.h @@ -0,0 +1,96 @@ +// +// STDSConfigParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The default group name that will be used to group additional + configuration parameters. + */ +extern NSString * const kSTDSConfigDefaultGroupName; + +/** + `STDSConfigParameters` represents additional configuration parameters + that can be passed to the Stripe3DS2 SDK during initialization. + + There are currently no supported additional parameters and apps can + just pass `[STDSConfigParameters alloc] initWithStandardParameters` + to the `STDSThreeDS2Service` instance. + */ +@interface STDSConfigParameters : NSObject + +/** + Convenience initializer to get an `STDSConfigParameters` instance + with the default expected configuration parameters. + */ +- (instancetype)initWithStandardParameters; + +/** + Adds the parameter to this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + @param paramGroup The group to which this parameter will be added. If `nil` the parameter will be added to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue toGroup:(nullable NSString *)paramGroup; + +/** + Adds the parameter to the default group in this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue; + +/** + Returns the value for `paramName` in `paramGroup` or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + @param paramGroup The group from which to fetch the parameter value. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName inGroup:(nullable NSString *)paramGroup; + +/** + Returns the value for `paramName` in the default group or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName; + +/** + Removes the specified parameter from the group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + @param paramGroup The group from which to remove this parameter. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName fromGroup:(nullable NSString *)paramGroup; + +/** + Removes the specified parameter from the default group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCustomization.h new file mode 100644 index 0000000000..516eff9e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSCustomization.h @@ -0,0 +1,25 @@ +// +// STDSCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +/// This class provides a common set of customization parameters, used to customize elements of the UI. +@interface STDSCustomization : NSObject + +/// The font to use for text. +@property (nonatomic, nullable) UIFont *font; + +/// The color to use for the text. +@property (nonatomic, nullable) UIColor *textColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSErrorMessage.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSErrorMessage.h new file mode 100644 index 0000000000..35bce4a305 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSErrorMessage.h @@ -0,0 +1,108 @@ +// +// STDSErrorMessage.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/// Error codes as defined by the 3DS2 spec. +typedef NS_ENUM(NSInteger, STDSErrorMessageCode) { + /// The SDK received a message that is not an ARes, CRes, or ErrorMessage. + STDSErrorMessageCodeInvalidMessage = 101, + + /// A required data element is missing from the network response. + STDSErrorMessageCodeRequiredDataElementMissing = 201, + + // Critical message extension not recognised + STDSErrorMessageCodeUnrecognizedCriticalMessageExtension = 202, + + /// A data element is not in the required format or the value is invalid. + STDSErrorMessageErrorInvalidDataElement = 203, + + // Transaction ID not recognized + STDSErrorMessageErrorTransactionIDNotRecognized = 301, + + /// A network response could not be decrypted or verified. + STDSErrorMessageErrorDataDecryptionFailure = 302, + + /// The SDK timed out + STDSErrorMessageErrorTimeout = 402, +}; + +/** + `STDSErrorMessage` represents an error message that is returned by the ACS or to be sent to the ACS. + */ +@interface STDSErrorMessage : NSObject + +/** + Designated initializer for `STDSErrorMessage`. + + @param errorCode The error code. + @param errorComponent The component that identified the error. + @param errorDescription Text describing the error. + @param errorDetails Additional error details. Optional. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode + errorComponent:(NSString *)errorComponent + errorDescription:(NSString *)errorDescription + errorDetails:(nullable NSString *)errorDetails + messageVersion:(NSString *)messageVersion + acsTransactionIdentifier:(nullable NSString *)acsTransactionIdentifier + errorMessageType:(NSString *)errorMessageType; + +/** + `STDSErrorMessage` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The error code. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + The 3-D Secure component that identified the error. + */ +@property (nonatomic, readonly) NSString *errorComponent; + +/** + Text describing the error. + */ +@property (nonatomic, readonly) NSString *errorDescription; + +/** + Additional error details. + */ +@property (nonatomic, nullable, readonly) NSString *errorDetails; + +/** + The protocol version identifier. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +/** + The ACS transaction identifier. + */ +@property (nonatomic, readonly, nullable) NSString *acsTransactionIdentifier; + +/** + The message type that was identified as erroneous. + */ +@property (nonatomic, readonly) NSString *errorMessageType; + +/** + A representation of the `STDSErrorMessage` as an `NSError` + */ +- (NSError *)NSErrorValue; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSException.h new file mode 100644 index 0000000000..1f2c5ecdf8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSException.h @@ -0,0 +1,25 @@ +// +// STDSException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + An abstract class to represent 3DS2 SDK custom exceptions + */ +@interface STDSException : NSException + +/** + A description of the exception. + */ +@property (nonatomic, readonly) NSString *message; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSFooterCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSFooterCustomization.h new file mode 100644 index 0000000000..990ffd9b25 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSFooterCustomization.h @@ -0,0 +1,41 @@ +// +// STDSFooterCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/10/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The Challenge view displays a footer with additional details that + expand when tapped. This object configures the appearance of that view. +*/ +@interface STDSFooterCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The background color of the footer. + Defaults to gray. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The color of the chevron. Defaults to a dark gray. +@property (nonatomic) UIColor *chevronColor; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSInvalidInputException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSInvalidInputException.h new file mode 100644 index 0000000000..b30d4e1079 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSInvalidInputException.h @@ -0,0 +1,21 @@ +// +// STDSInvalidInputException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSInvalidInputException` represents an exception that will be thrown by + Stripe3DS2 SDK methods that are called with invalid input arguments. + */ +@interface STDSInvalidInputException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONDecodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONDecodable.h new file mode 100644 index 0000000000..f93428acf7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONDecodable.h @@ -0,0 +1,33 @@ +// +// STDSJSONDecodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONDecodable + +/** + Initializes an instance of the class from its JSON representation. + + This method recognizes two categories of errors: + - a required field is missing. + - a required field value is in valid (e.g. expected 'Y' or 'N' but received 'X'). + + Errors populating optional fields are ignored. + + @param json The JSON dictionary that represents an object of this type + @param outError If there was a missing required field or invalid field value, contains an instance of NSError. + + @return The object represented by the JSON dictionary. If the object could not be decoded, returns nil and populates the outError argument. + */ ++ (nullable instancetype)decodedObjectFromJSON:(nullable NSDictionary *)json error:(NSError **)outError; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncodable.h new file mode 100644 index 0000000000..9861a23c39 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncodable.h @@ -0,0 +1,22 @@ +// +// STDSJSONEncodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONEncodable + +/** + Returns a map of property names to their JSON representation's key value. For example, `STDSChallengeParameters` has a property called `acsTransactionID`, but the 3DS2 JSON spec expects a field called `acsTransID`. This dictionary represents a mapping from the former to the latter (in other words, [STDSChallengeParameters propertyNamesToJSONKeysMapping][@"acsTransactionID"] == @"acsTransID".) + */ ++ (NSDictionary *)propertyNamesToJSONKeysMapping; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncoder.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncoder.h new file mode 100644 index 0000000000..7ccc07e613 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSJSONEncoder.h @@ -0,0 +1,27 @@ +// +// STDSJSONEncoder.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSJSONEncoder` is a utility class to help with converting API objects into JSON + */ +@interface STDSJSONEncoder : NSObject + +/** + Method to convert an STDSJSONEncodable object into a JSON dictionary. + */ ++ (NSDictionary *)dictionaryForObject:(NSObject *)object; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSLabelCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSLabelCustomization.h new file mode 100644 index 0000000000..af75cf39dd --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSLabelCustomization.h @@ -0,0 +1,31 @@ +// +// STDSLabelCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text label. + + The font and textColor inherited from `STDSCustomization` configure non-heading labels. + */ +@interface STDSLabelCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h new file mode 100644 index 0000000000..18affaaf74 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h @@ -0,0 +1,59 @@ +// +// STDSNavigationBarCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure a UINavigationBar. + + The font and textColor inherited from `STDSCustomization` configure the + title of the navigation bar, and default to nil. + */ +@interface STDSNavigationBarCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The tint color of the navigation bar background. + Defaults to nil. + */ +@property (nonatomic, nullable) UIColor *barTintColor; + +/** + The navigation bar style. + Defaults to UIBarStyleDefault. + */ +@property (nonatomic) UIBarStyle barStyle; + +/** + A Boolean value indicating whether the navigation bar is translucent or not. + Defaults to YES. + */ +@property (nonatomic) BOOL translucent; + +/** + The text to display in the title of the navigation bar. + Defaults to "Secure checkout". + */ +@property (nonatomic, copy) NSString *headerText; + +/** + The text to display for the button in the navigation bar. + Defaults to "Cancel". + */ +@property (nonatomic, copy) NSString *buttonText; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNotInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNotInitializedException.h new file mode 100644 index 0000000000..cb836d5e83 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSNotInitializedException.h @@ -0,0 +1,23 @@ +// +// STDSNotInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSNotInitializedException` represents an exception that will be thrown by + the the Stripe3DS2 SDK if methods are called without initializing `STDSThreeDS2Service`. + + @see STDSThreeDS2Service + */ +@interface STDSNotInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h new file mode 100644 index 0000000000..1e3142a722 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h @@ -0,0 +1,42 @@ +// +// STDSProtocolErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSErrorMessage; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSProtocolErrorEvent` contains details about erorrs received from or sent to the ACS. + */ +@interface STDSProtocolErrorEvent : NSObject + +/** + Designated initializer for `STDSProtocolErrorEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier errorMessage:(STDSErrorMessage *)errorMessage; + +/** + `STDSProtocolErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + Details about the error. + */ +@property (nonatomic, readonly) STDSErrorMessage *errorMessage; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h new file mode 100644 index 0000000000..658cdb90cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h @@ -0,0 +1,53 @@ +// +// STDSRuntimeErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeParsingError; +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeEncryptionError; + +/** + `STDSRuntimeErrorEvent` contains details about run-time errors encountered during authentication. + + The following are examples of run-time errors: + - ACS is unreachable + - Unparseable message + - Network issues + */ +@interface STDSRuntimeErrorEvent : NSObject + +/** + A code corresponding to the type of error this represents. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + Details about the error. + */ +@property (nonatomic, readonly) NSString *errorMessage; + +/** + Designated initializer for `STDSRuntimeErrorEvent`. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode errorMessage:(NSString *)errorMessage NS_DESIGNATED_INITIALIZER; + +/** + A representation of the `STDSRuntimeErrorEvent` as an `NSError` + */ +- (NSError *)NSErrorValue; + +/** + `STDSRuntimeErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeException.h new file mode 100644 index 0000000000..5b63a2d3bf --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSRuntimeException.h @@ -0,0 +1,21 @@ +// +// STDSRuntimeException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSRuntimeException` represents an exception that will be thrown by the + Stripe3DS2 SDK if it encounters an internal error. + */ +@interface STDSRuntimeException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h new file mode 100644 index 0000000000..a9818bb988 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h @@ -0,0 +1,48 @@ +// +// STDSSelectionCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/11/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object that configures the appearance of + radio buttons and checkboxes. + */ +@interface STDSSelectionCustomization: NSObject + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The primary color of the selected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *primarySelectedColor; + +/** + The secondary color of the selected state (e.g. the checkmark color). + Defaults to white. + */ +@property (nonatomic) UIColor *secondarySelectedColor; + +/** + The background color displayed in the unselected state. + Defaults to light blue. + */ +@property (nonatomic) UIColor *unselectedBackgroundColor; + +/** + The color of the border drawn around the view in the unselected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *unselectedBorderColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h new file mode 100644 index 0000000000..2e506fe2f4 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h @@ -0,0 +1,68 @@ +// +// STDSStripe3DS2Error.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorDomain; + +/** + NSError.userInfo contains this key if we received an ErrorMessage instead of the expected response object. + The value of this key is the ErrorMessage. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorMessageErrorKey; + +/** + NSError.userInfo contains this key if we errored parsing JSON. + The value of this key is the invalid or missing field. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorFieldKey; + +/** + NSError.userInfo contains this key if we couldn't recognize critical message extension(s) + The value of this key is an array of identifiers. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2UnrecognizedCriticalMessageExtensionsKey; + + +typedef NS_ENUM(NSInteger, STDSErrorCode) { + + /// Code triggered an assertion + STDSErrorCodeAssertionFailed = 204, + + // JSON Parsing + /// Received invalid or malformed data + STDSErrorCodeJSONFieldInvalid = 203, + /// Expected field missing + STDSErrorCodeJSONFieldMissing = 201, + + /// Critical message extension not recognised + STDSErrorCodeUnrecognizedCriticalMessageExtension = 202, + + /// Decryption or verification error + STDSErrorCodeDecryptionVerification = 302, + + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an unparseable network response + STDSErrorCodeRuntimeParsing = 400, + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an error with decrypting or verifying a network response + STDSErrorCodeRuntimeEncryption = 401, + + // Networking + /// We received an ErrorMessage instead of the expected response object. `userInfo[STDSStripe3DS2ErrorMessageErrorKey]` will contain the ErrorMessage object. + STDSErrorCodeReceivedErrorMessage = 1000, + /// We received an unknown message type. + STDSErrorCodeUnknownMessageType = 1001, + /// Request timed out + STDSErrorCodeTimeout = 1002, + + /// Unknown + STDSErrorCodeUnknownError = 2000, +}; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h new file mode 100644 index 0000000000..47443368a7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h @@ -0,0 +1,50 @@ +// +// STDSSwiftTryCatch.h +// +// Created by William Falcon on 10/10/14. +// Copyright (c) 2014 William Falcon. All rights reserved. +// +/* + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ +@interface STDSSwiftTryCatch : NSObject + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ ++ (void)tryBlock:(void(^)(void))tryBlock catchBlock:(void(^)(NSException*exception))catchBlock finallyBlock:(void(^)(void))finallyBlock; +/** + Throws Objective-C exception with name and reason set to `s` + */ ++ (void)throwString:(NSString*)s; + +/** + Throws exception `e` + */ ++ (void)throwException:(NSException*)e; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h new file mode 100644 index 0000000000..6f2bfede11 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h @@ -0,0 +1,47 @@ +// +// STDSTextFieldCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text field. + + The font and textColor inherited from `STDSCustomization` configure + the user input text. + */ +@interface STDSTextFieldCustomization : STDSCustomization + +/** + The default settings. + + The default textColor is black. + */ ++ (instancetype)defaultSettings; + +/// The border width of the text field. Defaults to 2. +@property (nonatomic) CGFloat borderWidth; + +/// The color of the border of the text field. Defaults to clear. +@property (nonatomic) UIColor *borderColor; + +/// The corner radius of the edges of the text field. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/// The appearance of the keyboard. Defaults to UIKeyboardAppearanceDefault. +@property (nonatomic) UIKeyboardAppearance keyboardAppearance; + +/// The color of the placeholder text. Defaults to light gray. +@property (nonatomic) UIColor *placeholderTextColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h new file mode 100644 index 0000000000..c0baa55fef --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h @@ -0,0 +1,84 @@ +// +// STDSThreeDS2Service.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSConfigParameters; +@class STDSTransaction; +@class STDSUICustomization; +@class STDSWarning; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSThreeDS2Service` is the main 3DS SDK interface and provides methods to process transactions. + */ +@interface STDSThreeDS2Service : NSObject + +/** + A list of warnings that may be populated once the SDK has been initialized. + */ +@property (nonatomic, readonly, nullable) NSArray *warnings; + +/** + Initializes the 3DS SDK instance. + + This method should be called at the start of the payment stage of a transaction. + **Note: Until the `STDSThreeDS2Service instance is initialized, it will be unusable.** + + - Performs security checks + - Collects device information + + @param config Configuration information that will be used during initialization. @see STDSConfigParameters + @param locale Optional override for the locale to use in UI. If `nil`, will default to the current system locale. + @param uiSettings Optional custom UI settings. If `nil`, will default to `[STDSUICustomization defaultSettings]`. + This argument is copied; any further changes to the customization object have no effect. @see STDSUICustomization + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `config` is `nil` or any of `config`, `locale`, or `uiSettings` are invalid. @see STDSInvalidInputException + @exception STDSAlreadyInitializedException Will throw an `STDSAlreadyInitializedException` if the 3DS SDK instance has already been initialized. @see STDSSDKAlreadyInitializedException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (void)initializeWithConfig:(STDSConfigParameters *)config + locale:(nullable NSLocale *)locale + uiSettings:(nullable STDSUICustomization *)uiSettings; + +/** + Creates and returns an instance of `STDSTransaction`. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `directoryServerID` is not recognized or if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + withProtocolVersion:(nullable NSString *)protocolVersion; + +/** + Creates and returns an instance of `STDSTransaction` using a custom directory server certificate. + Will return nil if unable to create a certificate from the provided params. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param serverKeyID An additional authentication key used by some Directory Servers + @param certificateString A Base64-encoded PEM or DER formatted certificate string containing the directory server's public key + @param rootCertificateStrings An arry of base64-encoded PEM or DER formatted certificate strings containing the DS root certificate used for signature checks + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + */ +- (nullable STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + serverKeyID:(nullable NSString *)serverKeyID + certificateString:(NSString *)certificateString + rootCertificateStrings:(NSArray *)rootCertificateStrings + withProtocolVersion:(nullable NSString *)protocolVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h new file mode 100644 index 0000000000..b4161a6e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h @@ -0,0 +1,15 @@ +// +// STDSThreeDSProtocolVersion.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 6/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const Stripe3DS2ProtocolVersion; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTransaction.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTransaction.h new file mode 100644 index 0000000000..45d06e5142 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSTransaction.h @@ -0,0 +1,79 @@ +// +// STDSTransaction.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +typedef void (^STDSTransactionVoidBlock)(void); + +@class STDSAuthenticationRequestParameters, STDSChallengeParameters; +@protocol STDSChallengeStatusReceiver; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSTransaction` holds parameters that the 3DS Server requires to create AReq messages and to perform the Challenge Flow. + */ +@interface STDSTransaction : NSObject + +/** + The UI type of the presented challenge for this transaction if applicable. Will be one of + "none" + "text" + "single_select" + "multi_select" + "oob" + "html" + */ +@property (nonatomic, readonly, copy) NSString *presentedChallengeUIType; + +/** + Encrypts device information collected during initialization and returns it along with SDK details. + + @return Encrypted device information and details about this SDK. @see STDSAuthenticationRequestParameters + + @exception SDKRuntimeException Thrown if an internal error is encountered. + */ +- (STDSAuthenticationRequestParameters *)createAuthenticationRequestParameters; + +/** + Returns a UIViewController instance displaying the Directory Server logo and a spinner. Present this during the Authentication Request/Response. + */ +- (UIViewController *)createProgressViewControllerWithDidCancel:(STDSTransactionVoidBlock)didCancel; + +/** + Initiates the challenge process, displaying challenge UI as needed. + + @param presentingViewController The UIViewController used to present the challenge response UIViewController + @param challengeParameters Details required to conduct the challenge process. @see STDSChallengeParameters + @param challengeStatusReceiver A callback object to receive the status of the challenge. See @STDSChallengeStatusReceiver + @param timeout An interval in seconds within which the challenge process will finish. Must be at least 5 minutes. + + @exception STDSInvalidInputException Thrown if an argument is invalid (e.g. timeout less than 5 minutes). @see STDSInvalidInputException + @exception STDSSDKRuntimeException Thrown if an internal error is encountered, and if you call this method after calling `close`. @see SDKRuntimeException + */ +- (void)doChallengeWithViewController:(UIViewController *)presentingViewController + challengeParameters:(STDSChallengeParameters *)challengeParameters + challengeStatusReceiver:(id)challengeStatusReceiver + timeout:(NSTimeInterval)timeout; + +/** + Returns the version of the Stripe3DS2 SDK, e.g. @"1.0" + */ +- (NSString *)sdkVersion; + +/** +Cleans up resources held by `STDSTransaction`. Call this when the transaction is completed, if `doChallengeWithChallengeParameters:challengeStatusReceiver:timeout` is not called. + + @note Don't use this object after calling this method. Calling `doChallengeWithViewController:challengeParameters:challengeStatusReceiver:timeout` after calling this method will throw an `STDSSDKRuntimeException` + */ +- (void)close; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSUICustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSUICustomization.h new file mode 100644 index 0000000000..651b22f170 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSUICustomization.h @@ -0,0 +1,109 @@ +// +// STDSUICustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import "STDSCustomization.h" +#import "STDSButtonCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSLabelCustomization.h" +#import "STDSTextFieldCustomization.h" +#import "STDSFooterCustomization.h" +#import "STDSSelectionCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSUICustomization` provides configuration for UI elements. + + It's important to configure this object appropriately before using it to initialize a + `STDSThreeDS2Service` object. `STDSThreeDS2Service` makes a copy of the customization + settings you provide; it ignores any subsequent changes you make to your `STDSUICustomization` instance. +*/ +@interface STDSUICustomization: NSObject + +/// The default settings. See individual properties for their default values. ++ (instancetype)defaultSettings; + +/** + Provides custom settings for the UINavigationBar of all UIViewControllers the SDK display. + The default is `[STDSNavigationBarCustomization defaultSettings]`. + */ +@property (nonatomic) STDSNavigationBarCustomization *navigationBarCustomization; + +/** + Provides custom settings for labels. + The default is `[STDSLabelCustomization defaultSettings]`. + */ +@property (nonatomic) STDSLabelCustomization *labelCustomization; + +/** + Provides custom settings for text fields. + The default is `[STDSTextFieldCustomization defaultSettings]`. + */ +@property (nonatomic) STDSTextFieldCustomization *textFieldCustomization; + +/** + The primary background color of all UIViewControllers the SDK display. + Defaults to white. + */ +@property (nonatomic) UIColor *backgroundColor; + +/** + The Challenge view displays a footer with additional details. This controls the background color of that view. + Defaults to gray. + */ +@property (nonatomic) STDSFooterCustomization *footerCustomization; + +/** + Sets a given button customization for the specified type. + + @param buttonCustomization The buttom customization to use. + @param buttonType The type of button to use the customization for. + */ +- (void)setButtonCustomization:(STDSButtonCustomization *)buttonCustomization forType:(STDSUICustomizationButtonType)buttonType; + +/** + Retrieves a button customization object for the given button type. + + @param buttonType The button type to retrieve a customization object for. + @return A button customization object, or the default if none was set. + @see STDSButtonCustomization + */ +- (STDSButtonCustomization *)buttonCustomizationForButtonType:(STDSUICustomizationButtonType)buttonType; + +/** + Provides custom settings for radio buttons and checkboxes. + The default is `[STDSSelectionCustomization defaultSettings]`. + */ +@property (nonatomic) STDSSelectionCustomization *selectionCustomization; + + +/** + The preferred status bar style for all UIViewControllers the SDK display. + Defaults to UIStatusBarStyleDefault. + */ +@property (nonatomic) UIStatusBarStyle preferredStatusBarStyle; + +#pragma mark - Progress View + +/** + The style of UIActivityIndicatorViews displayed. + This should contrast with `backgroundColor`. Defaults to regular on iOS 13+, + gray on iOS 10-12. + */ +@property (nonatomic) UIActivityIndicatorViewStyle activityIndicatorViewStyle; + +/** + The style of the UIBlurEffect displayed underneath the UIActivityIndicatorView. + Defaults to UIBlurEffectStyleDefault. + */ +@property (nonatomic) UIBlurEffectStyle blurStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSWarning.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSWarning.h new file mode 100644 index 0000000000..5f09fe70a8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/STDSWarning.h @@ -0,0 +1,69 @@ +// +// STDSWarning.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/12/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSWarningSeverity` enum defines the severity levels of warnings generated + during SDK initialization. @see STDSThreeDS2Service + */ +typedef NS_ENUM(NSInteger, STDSWarningSeverity) { + /** + Low severity + */ + STDSWarningSeverityLow = 0, + + /** + Medium severity + */ + STDSWarningSeverityMedium, + + /** + High severity + */ + STDSWarningSeverityHigh, +}; + +/** + The `STDSWarning` class represents warnings generated by `STDSThreeDS2Service` during + security checks run during initialization. @see STDSThreeDS2Service + */ +@interface STDSWarning : NSObject + +/** + Designated initializer for `STDSWarning`. + */ +- (instancetype)initWithIdentifier:(NSString *)identifier + message:(NSString *)message + severity:(STDSWarningSeverity)severity NS_DESIGNATED_INITIALIZER; + +/** + `STDSWarning` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The identifier for this warning instance. + */ +@property (nonatomic, readonly) NSString *identifier; + +/** + The descriptive message for this warning. + */ +@property (nonatomic, readonly) NSString *message; + +/** + The severity of this warning. + */ +@property (nonatomic, readonly) STDSWarningSeverity severity; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch new file mode 100644 index 0000000000..888096ff59 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch @@ -0,0 +1,14 @@ +// +// Stripe3DS2-Prefix.pch +// Stripe3DS2 +// +// Created by Cameron Sabol on 4/16/20. +// Copyright © 2020 Stripe. All rights reserved. +// + +#ifndef Stripe3DS2_pch +#define Stripe3DS2_pch + +#import "STDSLocalizedString.h" + +#endif /* Stripe3DS2_pch */ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2.h new file mode 100644 index 0000000000..9e9f3eba40 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Headers/Stripe3DS2.h @@ -0,0 +1,52 @@ +// +// Stripe3DS2.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/16/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +//! Project version number for Stripe3DS2. +FOUNDATION_EXPORT double Stripe3DS2VersionNumber; + +//! Project version string for Stripe3DS2. +FOUNDATION_EXPORT const unsigned char Stripe3DS2VersionString[]; + +#import "STDSConfigParameters.h" +#import "STDSThreeDS2Service.h" +#import "STDSUICustomization.h" +#import "STDSWarning.h" + +#import "STDSAlreadyInitializedException.h" +#import "STDSInvalidInputException.h" +#import "STDSNotInitializedException.h" +#import "STDSRuntimeException.h" + +#import "STDSErrorMessage.h" +#import "STDSProtocolErrorEvent.h" +#import "STDSRuntimeErrorEvent.h" +#import "STDSStripe3DS2Error.h" +#import "STDSThreeDSProtocolVersion.h" + +#import "STDSAuthenticationRequestParameters.h" +#import "STDSAuthenticationResponse.h" +#import "STDSChallengeParameters.h" +#import "STDSChallengeStatusReceiver.h" +#import "STDSCompletionEvent.h" +#import "STDSJSONDecodable.h" +#import "STDSJSONEncoder.h" +#import "STDSTransaction.h" + +#import "STDSButtonCustomization.h" +#import "STDSCustomization.h" +#import "STDSException.h" +#import "STDSFooterCustomization.h" +#import "STDSJSONEncodable.h" +#import "STDSLabelCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSSelectionCustomization.h" +#import "STDSTextFieldCustomization.h" + +#import "STDSSwiftTryCatch.h" diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Info.plist b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Info.plist new file mode 100644 index 0000000000..be27a3a6ab Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Info.plist differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Modules/module.modulemap b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Modules/module.modulemap new file mode 100644 index 0000000000..7770928524 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module Stripe3DS2 { + umbrella header "Stripe3DS2.h" + + export * + module * { export * } +} diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Stripe3DS2 b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Stripe3DS2 new file mode 100755 index 0000000000..172f721f02 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/Stripe3DS2 differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/amex.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/amex.der new file mode 100644 index 0000000000..61a1cfd1f0 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/amex.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/da.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/da.lproj/Localizable.strings new file mode 100644 index 0000000000..5ec99f659f Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/da.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/de.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/de.lproj/Localizable.strings new file mode 100644 index 0000000000..4a7102c290 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/de.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/discover.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/discover.der new file mode 100644 index 0000000000..5b17935a35 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/discover.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ec_test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ec_test.der new file mode 100644 index 0000000000..06587c44c3 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ec_test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en-GB.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en-GB.lproj/Localizable.strings new file mode 100644 index 0000000000..f3dd661b06 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en-GB.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en.lproj/Localizable.strings new file mode 100644 index 0000000000..2440abd600 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/en.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es-419.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es-419.lproj/Localizable.strings new file mode 100644 index 0000000000..415dd67a13 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es-419.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es.lproj/Localizable.strings new file mode 100644 index 0000000000..361e4c382e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/es.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fi.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fi.lproj/Localizable.strings new file mode 100644 index 0000000000..69e9adf5e5 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fi.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings new file mode 100644 index 0000000000..9d0943f90d Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr.lproj/Localizable.strings new file mode 100644 index 0000000000..85e6a6a49c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/fr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/hu.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/hu.lproj/Localizable.strings new file mode 100644 index 0000000000..83c4802687 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/hu.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/it.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/it.lproj/Localizable.strings new file mode 100644 index 0000000000..a513ed333c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/it.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ja.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ja.lproj/Localizable.strings new file mode 100644 index 0000000000..b63f7e5bf8 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ja.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ko.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ko.lproj/Localizable.strings new file mode 100644 index 0000000000..d984c0bbbd Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ko.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mastercard.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mastercard.der new file mode 100644 index 0000000000..6e136e1331 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mastercard.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mt.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mt.lproj/Localizable.strings new file mode 100644 index 0000000000..23cbe6a691 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/mt.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nb.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nb.lproj/Localizable.strings new file mode 100644 index 0000000000..8bbcf6499b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nb.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nl.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nl.lproj/Localizable.strings new file mode 100644 index 0000000000..b3d20eeaf2 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nl.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings new file mode 100644 index 0000000000..e676f72eda Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings new file mode 100644 index 0000000000..28945ef8ad Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings new file mode 100644 index 0000000000..1565f5ba60 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ru.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ru.lproj/Localizable.strings new file mode 100644 index 0000000000..e66e7d76f4 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ru.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/sv.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/sv.lproj/Localizable.strings new file mode 100644 index 0000000000..b3993c5f1e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/sv.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/tr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/tr.lproj/Localizable.strings new file mode 100644 index 0000000000..c5af6aee58 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/tr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ul-test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ul-test.der new file mode 100644 index 0000000000..11e5f29b3b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/ul-test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/visa.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/visa.der new file mode 100644 index 0000000000..a77735dfa6 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/visa.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings new file mode 100644 index 0000000000..393154ffa7 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000000..9d046f8d31 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings new file mode 100644 index 0000000000..b5183ce460 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Assets.car b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Assets.car new file mode 100644 index 0000000000..10ec85fd36 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Assets.car differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h new file mode 100644 index 0000000000..c39a85d8cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAlreadyInitializedException.h @@ -0,0 +1,22 @@ +// +// STDSAlreadyInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSAlreadyInitializedException` represents an exception that will be thrown in the `STDSThreeDS2Service` instance has already been initialized. + + @see STDSThreeDS2Service + */ +@interface STDSAlreadyInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h new file mode 100644 index 0000000000..766e48578c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationRequestParameters.h @@ -0,0 +1,68 @@ +// +// STDSAuthenticationRequestParameters.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface STDSAuthenticationRequestParameters : NSObject + +/** + Designated initializer for `STDSAuthenticationRequestParameters`. + + @param sdkTransactionIdentifier The SDK Transaction Identifier, as created by `[STDSTransaction createTransaction]` + @param deviceData Optional device data collected by the SDK. + @param sdkEphemeralPublicKey The SDK ephemeral public key. + @param sdkAppIdentifier The SDK app identifier. + @param sdkReferenceNumber The SDK reference number. + @param messageVersion The protocol version that is supported by the SDK and used for the transaction. + + @exception InvalidInputException Thrown if an input parameter is invalid. @see InvalidInputException + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)sdkTransactionIdentifier + deviceData:(nullable NSString *)deviceData + sdkEphemeralPublicKey:(NSString *)sdkEphemeralPublicKey + sdkAppIdentifier:(NSString *)sdkAppIdentifier + sdkReferenceNumber:(NSString *)sdkReferenceNumber + messageVersion:(NSString *)messageVersion; + +/** + The encrypted device data as a JWE string. + */ +@property (nonatomic, readonly, nullable) NSString *deviceData; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The SDK App Identifier. + */ +@property (nonatomic, readonly) NSString *sdkAppIdentifier; + +/** + The SDK reference number. + */ +@property (nonatomic, readonly) NSString *sdkReferenceNumber; + +/** + The SDK ephemeral public key. + */ +@property (nonatomic, readonly) NSString *sdkEphemeralPublicKey; + +/** + The protocol version that is used for the transaction. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h new file mode 100644 index 0000000000..d527f38df9 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSAuthenticationResponse.h @@ -0,0 +1,115 @@ +// +// STDSAuthenticationResponse.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSACSStatusType` enum defines the status of a transaction, as detailed in + 3DS2 Spec Seq 3.33: + */ +typedef NS_ENUM(NSInteger, STDSACSStatusType) { + /// The status is unknown or invalid + STDSACSStatusTypeUnknown = 0, + + /// Authenticated + STDSACSStatusTypeAuthenticated = 1, + + /// Requires a Cardholder challenge to complete authentication + STDSACSStatusTypeChallengeRequired = 2, + + /// Requires a Cardholder challenge using Decoupled Authentication + STDSACSStatusTypeDecoupledAuthentication = 3, + + /// Not authenticated + STDSACSStatusTypeNotAuthenticated = 4, + + /// Not authenticated, but a proof of authentication attempt (Authentication Value) + /// was generated + STDSACSStatusTypeProofGenerated = 5, + + /// Not authenticated, as authentication could not be performed due to technical or + /// other issue + STDSACSStatusTypeError = 6, + + /// Not authenticated because the Issuer is rejecting authentication and requesting + /// that authorisation not be attempted + STDSACSStatusTypeRejected = 7, + + /// Authentication not requested by the 3DS Server for data sent for informational + /// purposes only + STDSACSStatusTypeInformationalOnly = 8, +}; + +/** + A native protocol representing the response sent by the 3DS Server. + Only parameters relevant to performing 3DS2 authentication in the mobile SDK are exposed. + */ +@protocol STDSAuthenticationResponse + +/// Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction. +@property (nonatomic, readonly) NSString *threeDSServerTransactionID; + +/// Transaction status +@property (nonatomic, readonly) STDSACSStatusType status; + +/// Indication of whether a challenge is required. +@property (nonatomic, readonly, getter=isChallengeRequired) BOOL challengeRequired; + +/// Indicates whether the ACS confirms utilisation of Decoupled Authentication and agrees to utilise Decoupled Authentication to authenticate the Cardholder. +@property (nonatomic, readonly) BOOL willUseDecoupledAuthentication; + +/** + DS assigned ACS identifier. + Each DS can provide a unique ID to each ACS on an individual basis. + */ +@property (nonatomic, readonly, nullable) NSString *acsOperatorID; + +/// Unique identifier assigned by the EMVCo Secretariat upon Testing and Approval. +@property (nonatomic, readonly, nullable) NSString *acsReferenceNumber; + +/// Contains the JWS object (represented as a string) created by the ACS for the ARes message. +@property (nonatomic, readonly, nullable) NSString *acsSignedContent; + +/// Universally Unique transaction identifier assigned by the ACS to identify a single transaction. +@property (nonatomic, readonly) NSString *acsTransactionID; + +/// Fully qualified URL of the ACS to be used for the challenge. +@property (nonatomic, readonly, nullable) NSURL *acsURL; + +/** + Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction. The Issuer can provide information to Cardholder. + For example, “Additional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.” + */ +@property (nonatomic, readonly, nullable) NSString *cardholderInfo; + +/// EMVCo-assigned unique identifier to track approved DS. +@property (nonatomic, readonly, nullable) NSString *directoryServerReferenceNumber; + +/// Universally unique transaction identifier assigned by the DS to identify a single transaction. +@property (nonatomic, readonly, nullable) NSString *directoryServerTransactionID; + +/** + Protocol version identifier This shall be the Protocol Version Number of the specification utilised by the system creating this message. + The Message Version Number is set by the 3DS Server which originates the protocol with the AReq message. + The Message Version Number does not change during a 3DS transaction. + */ +@property (nonatomic, readonly) NSString *protocolVersion; + +/// Universally unique transaction identifier assigned by the 3DS SDK to identify a single transaction. +@property (nonatomic, readonly) NSString *sdkTransactionID; + +@end + +/// A utility to parse an STDSAuthenticationResponse from JSON +id _Nullable STDSAuthenticationResponseFromJSON(NSDictionary *json); + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSButtonCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSButtonCustomization.h new file mode 100644 index 0000000000..dd63f9820a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSButtonCustomization.h @@ -0,0 +1,83 @@ +// +// STDSButtonCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// +#import +#import + +#import "STDSCustomization.h" + +/// An enum that defines the different types of buttons that are able to be customized. +typedef NS_ENUM(NSInteger, STDSUICustomizationButtonType) { + + /// The submit button type. + STDSUICustomizationButtonTypeSubmit = 0, + + /// The continue button type. + STDSUICustomizationButtonTypeContinue = 1, + + /// The next button type. + STDSUICustomizationButtonTypeNext = 2, + + /// The cancel button type. + STDSUICustomizationButtonTypeCancel = 3, + + /// The resend button type. + STDSUICustomizationButtonTypeResend = 4, +}; + +/// An enumeration of the case transformations that can be applied to the button's title +typedef NS_ENUM(NSInteger, STDSButtonTitleStyle) { + /// Default style, doesn't modify the title + STDSButtonTitleStyleDefault, + + /// Applies localizedUppercaseString to the title + STDSButtonTitleStyleUppercase, + + /// Applies localizedLowercaseString to the title + STDSButtonTitleStyleLowercase, + + /// Applies localizedCapitalizedString to the title + STDSButtonTitleStyleSentenceCapitalized, +}; + +NS_ASSUME_NONNULL_BEGIN + +/// A customization object to use to configure the UI of a button. +@interface STDSButtonCustomization: STDSCustomization + +/// The default settings for the provided button type. ++ (instancetype)defaultSettingsForButtonType:(STDSUICustomizationButtonType)type; + +/** + Initializes an instance of STDSButtonCustomization with the given backgroundColor and colorRadius. + */ +- (instancetype)initWithBackgroundColor:(UIColor *)backgroundColor cornerRadius:(CGFloat)cornerRadius; + +/** + This is unavailable because there are no sensible default property values without a button type. + Use `defaultSettingsForButtonType:` or `initWithBackgroundColor:cornerRadius:` instead. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The background color of the button. + The default for .resend and .cancel is clear. + The default for .submit, .continue, and .next is blue. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The corner radius of the button. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/** + The capitalization style of the button title + */ +@property (nonatomic) STDSButtonTitleStyle titleStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeParameters.h new file mode 100644 index 0000000000..e1aa151cdc --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeParameters.h @@ -0,0 +1,61 @@ +// +// STDSChallengeParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@protocol STDSAuthenticationResponse; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSChallengeParameters` contains information from the 3DS Server's + authentication response that are used by the 3DS2 SDK to initiate + the challenge flow. + */ +@interface STDSChallengeParameters : NSObject + +/** + Convenience intiializer to create an instace of `STDSChallengeParameters` from an + `STDSAuthenticationResponse` + */ +- (instancetype)initWithAuthenticationResponse:(id)authResponse; + +/** + Transaction identifier assigned by the 3DS Server to uniquely identify + a transaction. + */ +@property (nonatomic, copy) NSString *threeDSServerTransactionID; + +/** + Transaction identifier assigned by the Access Control Server (ACS) + to uniquely identify a transaction. + */ +@property (nonatomic, copy) NSString *acsTransactionID; + +/** + The reference number of the relevant Access Control Server. + */ +@property (nonatomic, copy) NSString *acsReferenceNumber; + +/** + The encrypted message sent by the Access Control Server + containing the ACS URL, epthemeral public key, and the + 3DS2 SDK ephemeral public key. + */ +@property (nonatomic, copy) NSString *acsSignedContent; + +/** + The URL for the application that is requesting 3DS2 verification. + This property can be optionally set and will be included with the + messages sent to the Directory Server during the challenge flow. + */ +@property (nonatomic, copy, nullable) NSString *threeDSRequestorAppURL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h new file mode 100644 index 0000000000..a06a32bb93 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSChallengeStatusReceiver.h @@ -0,0 +1,61 @@ +// +// STDSChallengeStatusReceiver.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +@class STDSTransaction, STDSCompletionEvent, STDSRuntimeErrorEvent, STDSProtocolErrorEvent; + +NS_ASSUME_NONNULL_BEGIN + +/** + Implement the `STDSChallengeStatusReceiver` protocol to receive challenge status notifications at the end of the challenge process. + @see `STDSTransaction.doChallenge` + */ +@protocol STDSChallengeStatusReceiver + +/** + Called when the challenge process is completed. + + @param completionEvent Information about the completion of the challenge process. @see `STDSCompletionEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didCompleteChallengeWithCompletionEvent:(STDSCompletionEvent *)completionEvent; + +/** + Called when the user selects the option to cancel the transaction on the challenge screen. + */ +- (void)transactionDidCancel:(STDSTransaction *)transaction; + +/** + Called when the challenge process reaches or exceeds the timeout interval that was passed to `STDSTransaction.doChallenge` + */ +- (void)transactionDidTimeOut:(STDSTransaction *)transaction; + +/** + Called when the 3DS SDK receives an EMV 3-D Secure protocol-defined error message from the ACS. + + @param protocolErrorEvent The error code and details. @see `STDSProtocolErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithProtocolErrorEvent:(STDSProtocolErrorEvent *)protocolErrorEvent; + +/** + Called when the 3DS SDK encounters errors during the challenge process. These errors include all errors except those covered by `didErrorWithProtocolErrorEvent`. + + @param runtimeErrorEvent The error code and details. @see `STDSRuntimeErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithRuntimeErrorEvent:(STDSRuntimeErrorEvent *)runtimeErrorEvent; + +@optional + +/** + Optional method that will be called when the transaction displays a new challenge screen. + */ +- (void)transactionDidPresentChallengeScreen:(STDSTransaction *)transaction; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCompletionEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCompletionEvent.h new file mode 100644 index 0000000000..851c71dbe2 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCompletionEvent.h @@ -0,0 +1,40 @@ +// +// STDSCompletionEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSCompletionEvent` contains information about completion of the challenge process. + */ +@interface STDSCompletionEvent : NSObject + +/** + Designated initializer for `STDSCompletionEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier transactionStatus:(NSString *)transactionStatus NS_DESIGNATED_INITIALIZER; + +/** + `STDSCompletionEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The SDK Transaction ID. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The transaction status that was received in the final challenge response. + */ +@property (nonatomic, readonly) NSString *transactionStatus; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSConfigParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSConfigParameters.h new file mode 100644 index 0000000000..4d77ba5d5a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSConfigParameters.h @@ -0,0 +1,96 @@ +// +// STDSConfigParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The default group name that will be used to group additional + configuration parameters. + */ +extern NSString * const kSTDSConfigDefaultGroupName; + +/** + `STDSConfigParameters` represents additional configuration parameters + that can be passed to the Stripe3DS2 SDK during initialization. + + There are currently no supported additional parameters and apps can + just pass `[STDSConfigParameters alloc] initWithStandardParameters` + to the `STDSThreeDS2Service` instance. + */ +@interface STDSConfigParameters : NSObject + +/** + Convenience initializer to get an `STDSConfigParameters` instance + with the default expected configuration parameters. + */ +- (instancetype)initWithStandardParameters; + +/** + Adds the parameter to this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + @param paramGroup The group to which this parameter will be added. If `nil` the parameter will be added to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue toGroup:(nullable NSString *)paramGroup; + +/** + Adds the parameter to the default group in this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue; + +/** + Returns the value for `paramName` in `paramGroup` or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + @param paramGroup The group from which to fetch the parameter value. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName inGroup:(nullable NSString *)paramGroup; + +/** + Returns the value for `paramName` in the default group or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName; + +/** + Removes the specified parameter from the group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + @param paramGroup The group from which to remove this parameter. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName fromGroup:(nullable NSString *)paramGroup; + +/** + Removes the specified parameter from the default group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCustomization.h new file mode 100644 index 0000000000..516eff9e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSCustomization.h @@ -0,0 +1,25 @@ +// +// STDSCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +/// This class provides a common set of customization parameters, used to customize elements of the UI. +@interface STDSCustomization : NSObject + +/// The font to use for text. +@property (nonatomic, nullable) UIFont *font; + +/// The color to use for the text. +@property (nonatomic, nullable) UIColor *textColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSErrorMessage.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSErrorMessage.h new file mode 100644 index 0000000000..35bce4a305 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSErrorMessage.h @@ -0,0 +1,108 @@ +// +// STDSErrorMessage.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/// Error codes as defined by the 3DS2 spec. +typedef NS_ENUM(NSInteger, STDSErrorMessageCode) { + /// The SDK received a message that is not an ARes, CRes, or ErrorMessage. + STDSErrorMessageCodeInvalidMessage = 101, + + /// A required data element is missing from the network response. + STDSErrorMessageCodeRequiredDataElementMissing = 201, + + // Critical message extension not recognised + STDSErrorMessageCodeUnrecognizedCriticalMessageExtension = 202, + + /// A data element is not in the required format or the value is invalid. + STDSErrorMessageErrorInvalidDataElement = 203, + + // Transaction ID not recognized + STDSErrorMessageErrorTransactionIDNotRecognized = 301, + + /// A network response could not be decrypted or verified. + STDSErrorMessageErrorDataDecryptionFailure = 302, + + /// The SDK timed out + STDSErrorMessageErrorTimeout = 402, +}; + +/** + `STDSErrorMessage` represents an error message that is returned by the ACS or to be sent to the ACS. + */ +@interface STDSErrorMessage : NSObject + +/** + Designated initializer for `STDSErrorMessage`. + + @param errorCode The error code. + @param errorComponent The component that identified the error. + @param errorDescription Text describing the error. + @param errorDetails Additional error details. Optional. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode + errorComponent:(NSString *)errorComponent + errorDescription:(NSString *)errorDescription + errorDetails:(nullable NSString *)errorDetails + messageVersion:(NSString *)messageVersion + acsTransactionIdentifier:(nullable NSString *)acsTransactionIdentifier + errorMessageType:(NSString *)errorMessageType; + +/** + `STDSErrorMessage` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The error code. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + The 3-D Secure component that identified the error. + */ +@property (nonatomic, readonly) NSString *errorComponent; + +/** + Text describing the error. + */ +@property (nonatomic, readonly) NSString *errorDescription; + +/** + Additional error details. + */ +@property (nonatomic, nullable, readonly) NSString *errorDetails; + +/** + The protocol version identifier. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +/** + The ACS transaction identifier. + */ +@property (nonatomic, readonly, nullable) NSString *acsTransactionIdentifier; + +/** + The message type that was identified as erroneous. + */ +@property (nonatomic, readonly) NSString *errorMessageType; + +/** + A representation of the `STDSErrorMessage` as an `NSError` + */ +- (NSError *)NSErrorValue; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSException.h new file mode 100644 index 0000000000..1f2c5ecdf8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSException.h @@ -0,0 +1,25 @@ +// +// STDSException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + An abstract class to represent 3DS2 SDK custom exceptions + */ +@interface STDSException : NSException + +/** + A description of the exception. + */ +@property (nonatomic, readonly) NSString *message; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSFooterCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSFooterCustomization.h new file mode 100644 index 0000000000..990ffd9b25 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSFooterCustomization.h @@ -0,0 +1,41 @@ +// +// STDSFooterCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/10/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The Challenge view displays a footer with additional details that + expand when tapped. This object configures the appearance of that view. +*/ +@interface STDSFooterCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The background color of the footer. + Defaults to gray. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The color of the chevron. Defaults to a dark gray. +@property (nonatomic) UIColor *chevronColor; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSInvalidInputException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSInvalidInputException.h new file mode 100644 index 0000000000..b30d4e1079 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSInvalidInputException.h @@ -0,0 +1,21 @@ +// +// STDSInvalidInputException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSInvalidInputException` represents an exception that will be thrown by + Stripe3DS2 SDK methods that are called with invalid input arguments. + */ +@interface STDSInvalidInputException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONDecodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONDecodable.h new file mode 100644 index 0000000000..f93428acf7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONDecodable.h @@ -0,0 +1,33 @@ +// +// STDSJSONDecodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONDecodable + +/** + Initializes an instance of the class from its JSON representation. + + This method recognizes two categories of errors: + - a required field is missing. + - a required field value is in valid (e.g. expected 'Y' or 'N' but received 'X'). + + Errors populating optional fields are ignored. + + @param json The JSON dictionary that represents an object of this type + @param outError If there was a missing required field or invalid field value, contains an instance of NSError. + + @return The object represented by the JSON dictionary. If the object could not be decoded, returns nil and populates the outError argument. + */ ++ (nullable instancetype)decodedObjectFromJSON:(nullable NSDictionary *)json error:(NSError **)outError; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncodable.h new file mode 100644 index 0000000000..9861a23c39 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncodable.h @@ -0,0 +1,22 @@ +// +// STDSJSONEncodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONEncodable + +/** + Returns a map of property names to their JSON representation's key value. For example, `STDSChallengeParameters` has a property called `acsTransactionID`, but the 3DS2 JSON spec expects a field called `acsTransID`. This dictionary represents a mapping from the former to the latter (in other words, [STDSChallengeParameters propertyNamesToJSONKeysMapping][@"acsTransactionID"] == @"acsTransID".) + */ ++ (NSDictionary *)propertyNamesToJSONKeysMapping; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncoder.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncoder.h new file mode 100644 index 0000000000..7ccc07e613 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSJSONEncoder.h @@ -0,0 +1,27 @@ +// +// STDSJSONEncoder.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSJSONEncoder` is a utility class to help with converting API objects into JSON + */ +@interface STDSJSONEncoder : NSObject + +/** + Method to convert an STDSJSONEncodable object into a JSON dictionary. + */ ++ (NSDictionary *)dictionaryForObject:(NSObject *)object; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSLabelCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSLabelCustomization.h new file mode 100644 index 0000000000..af75cf39dd --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSLabelCustomization.h @@ -0,0 +1,31 @@ +// +// STDSLabelCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text label. + + The font and textColor inherited from `STDSCustomization` configure non-heading labels. + */ +@interface STDSLabelCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h new file mode 100644 index 0000000000..18affaaf74 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNavigationBarCustomization.h @@ -0,0 +1,59 @@ +// +// STDSNavigationBarCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure a UINavigationBar. + + The font and textColor inherited from `STDSCustomization` configure the + title of the navigation bar, and default to nil. + */ +@interface STDSNavigationBarCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The tint color of the navigation bar background. + Defaults to nil. + */ +@property (nonatomic, nullable) UIColor *barTintColor; + +/** + The navigation bar style. + Defaults to UIBarStyleDefault. + */ +@property (nonatomic) UIBarStyle barStyle; + +/** + A Boolean value indicating whether the navigation bar is translucent or not. + Defaults to YES. + */ +@property (nonatomic) BOOL translucent; + +/** + The text to display in the title of the navigation bar. + Defaults to "Secure checkout". + */ +@property (nonatomic, copy) NSString *headerText; + +/** + The text to display for the button in the navigation bar. + Defaults to "Cancel". + */ +@property (nonatomic, copy) NSString *buttonText; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNotInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNotInitializedException.h new file mode 100644 index 0000000000..cb836d5e83 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSNotInitializedException.h @@ -0,0 +1,23 @@ +// +// STDSNotInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSNotInitializedException` represents an exception that will be thrown by + the the Stripe3DS2 SDK if methods are called without initializing `STDSThreeDS2Service`. + + @see STDSThreeDS2Service + */ +@interface STDSNotInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h new file mode 100644 index 0000000000..1e3142a722 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSProtocolErrorEvent.h @@ -0,0 +1,42 @@ +// +// STDSProtocolErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSErrorMessage; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSProtocolErrorEvent` contains details about erorrs received from or sent to the ACS. + */ +@interface STDSProtocolErrorEvent : NSObject + +/** + Designated initializer for `STDSProtocolErrorEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier errorMessage:(STDSErrorMessage *)errorMessage; + +/** + `STDSProtocolErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + Details about the error. + */ +@property (nonatomic, readonly) STDSErrorMessage *errorMessage; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h new file mode 100644 index 0000000000..658cdb90cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeErrorEvent.h @@ -0,0 +1,53 @@ +// +// STDSRuntimeErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeParsingError; +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeEncryptionError; + +/** + `STDSRuntimeErrorEvent` contains details about run-time errors encountered during authentication. + + The following are examples of run-time errors: + - ACS is unreachable + - Unparseable message + - Network issues + */ +@interface STDSRuntimeErrorEvent : NSObject + +/** + A code corresponding to the type of error this represents. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + Details about the error. + */ +@property (nonatomic, readonly) NSString *errorMessage; + +/** + Designated initializer for `STDSRuntimeErrorEvent`. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode errorMessage:(NSString *)errorMessage NS_DESIGNATED_INITIALIZER; + +/** + A representation of the `STDSRuntimeErrorEvent` as an `NSError` + */ +- (NSError *)NSErrorValue; + +/** + `STDSRuntimeErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeException.h new file mode 100644 index 0000000000..5b63a2d3bf --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSRuntimeException.h @@ -0,0 +1,21 @@ +// +// STDSRuntimeException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSRuntimeException` represents an exception that will be thrown by the + Stripe3DS2 SDK if it encounters an internal error. + */ +@interface STDSRuntimeException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h new file mode 100644 index 0000000000..a9818bb988 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSelectionCustomization.h @@ -0,0 +1,48 @@ +// +// STDSSelectionCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/11/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object that configures the appearance of + radio buttons and checkboxes. + */ +@interface STDSSelectionCustomization: NSObject + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The primary color of the selected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *primarySelectedColor; + +/** + The secondary color of the selected state (e.g. the checkmark color). + Defaults to white. + */ +@property (nonatomic) UIColor *secondarySelectedColor; + +/** + The background color displayed in the unselected state. + Defaults to light blue. + */ +@property (nonatomic) UIColor *unselectedBackgroundColor; + +/** + The color of the border drawn around the view in the unselected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *unselectedBorderColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h new file mode 100644 index 0000000000..2e506fe2f4 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSStripe3DS2Error.h @@ -0,0 +1,68 @@ +// +// STDSStripe3DS2Error.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorDomain; + +/** + NSError.userInfo contains this key if we received an ErrorMessage instead of the expected response object. + The value of this key is the ErrorMessage. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorMessageErrorKey; + +/** + NSError.userInfo contains this key if we errored parsing JSON. + The value of this key is the invalid or missing field. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorFieldKey; + +/** + NSError.userInfo contains this key if we couldn't recognize critical message extension(s) + The value of this key is an array of identifiers. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2UnrecognizedCriticalMessageExtensionsKey; + + +typedef NS_ENUM(NSInteger, STDSErrorCode) { + + /// Code triggered an assertion + STDSErrorCodeAssertionFailed = 204, + + // JSON Parsing + /// Received invalid or malformed data + STDSErrorCodeJSONFieldInvalid = 203, + /// Expected field missing + STDSErrorCodeJSONFieldMissing = 201, + + /// Critical message extension not recognised + STDSErrorCodeUnrecognizedCriticalMessageExtension = 202, + + /// Decryption or verification error + STDSErrorCodeDecryptionVerification = 302, + + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an unparseable network response + STDSErrorCodeRuntimeParsing = 400, + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an error with decrypting or verifying a network response + STDSErrorCodeRuntimeEncryption = 401, + + // Networking + /// We received an ErrorMessage instead of the expected response object. `userInfo[STDSStripe3DS2ErrorMessageErrorKey]` will contain the ErrorMessage object. + STDSErrorCodeReceivedErrorMessage = 1000, + /// We received an unknown message type. + STDSErrorCodeUnknownMessageType = 1001, + /// Request timed out + STDSErrorCodeTimeout = 1002, + + /// Unknown + STDSErrorCodeUnknownError = 2000, +}; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h new file mode 100644 index 0000000000..47443368a7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSSwiftTryCatch.h @@ -0,0 +1,50 @@ +// +// STDSSwiftTryCatch.h +// +// Created by William Falcon on 10/10/14. +// Copyright (c) 2014 William Falcon. All rights reserved. +// +/* + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ +@interface STDSSwiftTryCatch : NSObject + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ ++ (void)tryBlock:(void(^)(void))tryBlock catchBlock:(void(^)(NSException*exception))catchBlock finallyBlock:(void(^)(void))finallyBlock; +/** + Throws Objective-C exception with name and reason set to `s` + */ ++ (void)throwString:(NSString*)s; + +/** + Throws exception `e` + */ ++ (void)throwException:(NSException*)e; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h new file mode 100644 index 0000000000..6f2bfede11 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTextFieldCustomization.h @@ -0,0 +1,47 @@ +// +// STDSTextFieldCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text field. + + The font and textColor inherited from `STDSCustomization` configure + the user input text. + */ +@interface STDSTextFieldCustomization : STDSCustomization + +/** + The default settings. + + The default textColor is black. + */ ++ (instancetype)defaultSettings; + +/// The border width of the text field. Defaults to 2. +@property (nonatomic) CGFloat borderWidth; + +/// The color of the border of the text field. Defaults to clear. +@property (nonatomic) UIColor *borderColor; + +/// The corner radius of the edges of the text field. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/// The appearance of the keyboard. Defaults to UIKeyboardAppearanceDefault. +@property (nonatomic) UIKeyboardAppearance keyboardAppearance; + +/// The color of the placeholder text. Defaults to light gray. +@property (nonatomic) UIColor *placeholderTextColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h new file mode 100644 index 0000000000..c0baa55fef --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDS2Service.h @@ -0,0 +1,84 @@ +// +// STDSThreeDS2Service.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSConfigParameters; +@class STDSTransaction; +@class STDSUICustomization; +@class STDSWarning; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSThreeDS2Service` is the main 3DS SDK interface and provides methods to process transactions. + */ +@interface STDSThreeDS2Service : NSObject + +/** + A list of warnings that may be populated once the SDK has been initialized. + */ +@property (nonatomic, readonly, nullable) NSArray *warnings; + +/** + Initializes the 3DS SDK instance. + + This method should be called at the start of the payment stage of a transaction. + **Note: Until the `STDSThreeDS2Service instance is initialized, it will be unusable.** + + - Performs security checks + - Collects device information + + @param config Configuration information that will be used during initialization. @see STDSConfigParameters + @param locale Optional override for the locale to use in UI. If `nil`, will default to the current system locale. + @param uiSettings Optional custom UI settings. If `nil`, will default to `[STDSUICustomization defaultSettings]`. + This argument is copied; any further changes to the customization object have no effect. @see STDSUICustomization + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `config` is `nil` or any of `config`, `locale`, or `uiSettings` are invalid. @see STDSInvalidInputException + @exception STDSAlreadyInitializedException Will throw an `STDSAlreadyInitializedException` if the 3DS SDK instance has already been initialized. @see STDSSDKAlreadyInitializedException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (void)initializeWithConfig:(STDSConfigParameters *)config + locale:(nullable NSLocale *)locale + uiSettings:(nullable STDSUICustomization *)uiSettings; + +/** + Creates and returns an instance of `STDSTransaction`. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `directoryServerID` is not recognized or if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + withProtocolVersion:(nullable NSString *)protocolVersion; + +/** + Creates and returns an instance of `STDSTransaction` using a custom directory server certificate. + Will return nil if unable to create a certificate from the provided params. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param serverKeyID An additional authentication key used by some Directory Servers + @param certificateString A Base64-encoded PEM or DER formatted certificate string containing the directory server's public key + @param rootCertificateStrings An arry of base64-encoded PEM or DER formatted certificate strings containing the DS root certificate used for signature checks + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + */ +- (nullable STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + serverKeyID:(nullable NSString *)serverKeyID + certificateString:(NSString *)certificateString + rootCertificateStrings:(NSArray *)rootCertificateStrings + withProtocolVersion:(nullable NSString *)protocolVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h new file mode 100644 index 0000000000..b4161a6e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSThreeDSProtocolVersion.h @@ -0,0 +1,15 @@ +// +// STDSThreeDSProtocolVersion.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 6/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const Stripe3DS2ProtocolVersion; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTransaction.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTransaction.h new file mode 100644 index 0000000000..45d06e5142 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSTransaction.h @@ -0,0 +1,79 @@ +// +// STDSTransaction.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +typedef void (^STDSTransactionVoidBlock)(void); + +@class STDSAuthenticationRequestParameters, STDSChallengeParameters; +@protocol STDSChallengeStatusReceiver; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSTransaction` holds parameters that the 3DS Server requires to create AReq messages and to perform the Challenge Flow. + */ +@interface STDSTransaction : NSObject + +/** + The UI type of the presented challenge for this transaction if applicable. Will be one of + "none" + "text" + "single_select" + "multi_select" + "oob" + "html" + */ +@property (nonatomic, readonly, copy) NSString *presentedChallengeUIType; + +/** + Encrypts device information collected during initialization and returns it along with SDK details. + + @return Encrypted device information and details about this SDK. @see STDSAuthenticationRequestParameters + + @exception SDKRuntimeException Thrown if an internal error is encountered. + */ +- (STDSAuthenticationRequestParameters *)createAuthenticationRequestParameters; + +/** + Returns a UIViewController instance displaying the Directory Server logo and a spinner. Present this during the Authentication Request/Response. + */ +- (UIViewController *)createProgressViewControllerWithDidCancel:(STDSTransactionVoidBlock)didCancel; + +/** + Initiates the challenge process, displaying challenge UI as needed. + + @param presentingViewController The UIViewController used to present the challenge response UIViewController + @param challengeParameters Details required to conduct the challenge process. @see STDSChallengeParameters + @param challengeStatusReceiver A callback object to receive the status of the challenge. See @STDSChallengeStatusReceiver + @param timeout An interval in seconds within which the challenge process will finish. Must be at least 5 minutes. + + @exception STDSInvalidInputException Thrown if an argument is invalid (e.g. timeout less than 5 minutes). @see STDSInvalidInputException + @exception STDSSDKRuntimeException Thrown if an internal error is encountered, and if you call this method after calling `close`. @see SDKRuntimeException + */ +- (void)doChallengeWithViewController:(UIViewController *)presentingViewController + challengeParameters:(STDSChallengeParameters *)challengeParameters + challengeStatusReceiver:(id)challengeStatusReceiver + timeout:(NSTimeInterval)timeout; + +/** + Returns the version of the Stripe3DS2 SDK, e.g. @"1.0" + */ +- (NSString *)sdkVersion; + +/** +Cleans up resources held by `STDSTransaction`. Call this when the transaction is completed, if `doChallengeWithChallengeParameters:challengeStatusReceiver:timeout` is not called. + + @note Don't use this object after calling this method. Calling `doChallengeWithViewController:challengeParameters:challengeStatusReceiver:timeout` after calling this method will throw an `STDSSDKRuntimeException` + */ +- (void)close; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSUICustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSUICustomization.h new file mode 100644 index 0000000000..651b22f170 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSUICustomization.h @@ -0,0 +1,109 @@ +// +// STDSUICustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import "STDSCustomization.h" +#import "STDSButtonCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSLabelCustomization.h" +#import "STDSTextFieldCustomization.h" +#import "STDSFooterCustomization.h" +#import "STDSSelectionCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSUICustomization` provides configuration for UI elements. + + It's important to configure this object appropriately before using it to initialize a + `STDSThreeDS2Service` object. `STDSThreeDS2Service` makes a copy of the customization + settings you provide; it ignores any subsequent changes you make to your `STDSUICustomization` instance. +*/ +@interface STDSUICustomization: NSObject + +/// The default settings. See individual properties for their default values. ++ (instancetype)defaultSettings; + +/** + Provides custom settings for the UINavigationBar of all UIViewControllers the SDK display. + The default is `[STDSNavigationBarCustomization defaultSettings]`. + */ +@property (nonatomic) STDSNavigationBarCustomization *navigationBarCustomization; + +/** + Provides custom settings for labels. + The default is `[STDSLabelCustomization defaultSettings]`. + */ +@property (nonatomic) STDSLabelCustomization *labelCustomization; + +/** + Provides custom settings for text fields. + The default is `[STDSTextFieldCustomization defaultSettings]`. + */ +@property (nonatomic) STDSTextFieldCustomization *textFieldCustomization; + +/** + The primary background color of all UIViewControllers the SDK display. + Defaults to white. + */ +@property (nonatomic) UIColor *backgroundColor; + +/** + The Challenge view displays a footer with additional details. This controls the background color of that view. + Defaults to gray. + */ +@property (nonatomic) STDSFooterCustomization *footerCustomization; + +/** + Sets a given button customization for the specified type. + + @param buttonCustomization The buttom customization to use. + @param buttonType The type of button to use the customization for. + */ +- (void)setButtonCustomization:(STDSButtonCustomization *)buttonCustomization forType:(STDSUICustomizationButtonType)buttonType; + +/** + Retrieves a button customization object for the given button type. + + @param buttonType The button type to retrieve a customization object for. + @return A button customization object, or the default if none was set. + @see STDSButtonCustomization + */ +- (STDSButtonCustomization *)buttonCustomizationForButtonType:(STDSUICustomizationButtonType)buttonType; + +/** + Provides custom settings for radio buttons and checkboxes. + The default is `[STDSSelectionCustomization defaultSettings]`. + */ +@property (nonatomic) STDSSelectionCustomization *selectionCustomization; + + +/** + The preferred status bar style for all UIViewControllers the SDK display. + Defaults to UIStatusBarStyleDefault. + */ +@property (nonatomic) UIStatusBarStyle preferredStatusBarStyle; + +#pragma mark - Progress View + +/** + The style of UIActivityIndicatorViews displayed. + This should contrast with `backgroundColor`. Defaults to regular on iOS 13+, + gray on iOS 10-12. + */ +@property (nonatomic) UIActivityIndicatorViewStyle activityIndicatorViewStyle; + +/** + The style of the UIBlurEffect displayed underneath the UIActivityIndicatorView. + Defaults to UIBlurEffectStyleDefault. + */ +@property (nonatomic) UIBlurEffectStyle blurStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSWarning.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSWarning.h new file mode 100644 index 0000000000..5f09fe70a8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/STDSWarning.h @@ -0,0 +1,69 @@ +// +// STDSWarning.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/12/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSWarningSeverity` enum defines the severity levels of warnings generated + during SDK initialization. @see STDSThreeDS2Service + */ +typedef NS_ENUM(NSInteger, STDSWarningSeverity) { + /** + Low severity + */ + STDSWarningSeverityLow = 0, + + /** + Medium severity + */ + STDSWarningSeverityMedium, + + /** + High severity + */ + STDSWarningSeverityHigh, +}; + +/** + The `STDSWarning` class represents warnings generated by `STDSThreeDS2Service` during + security checks run during initialization. @see STDSThreeDS2Service + */ +@interface STDSWarning : NSObject + +/** + Designated initializer for `STDSWarning`. + */ +- (instancetype)initWithIdentifier:(NSString *)identifier + message:(NSString *)message + severity:(STDSWarningSeverity)severity NS_DESIGNATED_INITIALIZER; + +/** + `STDSWarning` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The identifier for this warning instance. + */ +@property (nonatomic, readonly) NSString *identifier; + +/** + The descriptive message for this warning. + */ +@property (nonatomic, readonly) NSString *message; + +/** + The severity of this warning. + */ +@property (nonatomic, readonly) STDSWarningSeverity severity; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch new file mode 100644 index 0000000000..888096ff59 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2-Prefix.pch @@ -0,0 +1,14 @@ +// +// Stripe3DS2-Prefix.pch +// Stripe3DS2 +// +// Created by Cameron Sabol on 4/16/20. +// Copyright © 2020 Stripe. All rights reserved. +// + +#ifndef Stripe3DS2_pch +#define Stripe3DS2_pch + +#import "STDSLocalizedString.h" + +#endif /* Stripe3DS2_pch */ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2.h new file mode 100644 index 0000000000..9e9f3eba40 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Headers/Stripe3DS2.h @@ -0,0 +1,52 @@ +// +// Stripe3DS2.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/16/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +//! Project version number for Stripe3DS2. +FOUNDATION_EXPORT double Stripe3DS2VersionNumber; + +//! Project version string for Stripe3DS2. +FOUNDATION_EXPORT const unsigned char Stripe3DS2VersionString[]; + +#import "STDSConfigParameters.h" +#import "STDSThreeDS2Service.h" +#import "STDSUICustomization.h" +#import "STDSWarning.h" + +#import "STDSAlreadyInitializedException.h" +#import "STDSInvalidInputException.h" +#import "STDSNotInitializedException.h" +#import "STDSRuntimeException.h" + +#import "STDSErrorMessage.h" +#import "STDSProtocolErrorEvent.h" +#import "STDSRuntimeErrorEvent.h" +#import "STDSStripe3DS2Error.h" +#import "STDSThreeDSProtocolVersion.h" + +#import "STDSAuthenticationRequestParameters.h" +#import "STDSAuthenticationResponse.h" +#import "STDSChallengeParameters.h" +#import "STDSChallengeStatusReceiver.h" +#import "STDSCompletionEvent.h" +#import "STDSJSONDecodable.h" +#import "STDSJSONEncoder.h" +#import "STDSTransaction.h" + +#import "STDSButtonCustomization.h" +#import "STDSCustomization.h" +#import "STDSException.h" +#import "STDSFooterCustomization.h" +#import "STDSJSONEncodable.h" +#import "STDSLabelCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSSelectionCustomization.h" +#import "STDSTextFieldCustomization.h" + +#import "STDSSwiftTryCatch.h" diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Info.plist b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Info.plist new file mode 100644 index 0000000000..3b42badb2f Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Info.plist differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Modules/module.modulemap b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Modules/module.modulemap new file mode 100644 index 0000000000..7770928524 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module Stripe3DS2 { + umbrella header "Stripe3DS2.h" + + export * + module * { export * } +} diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Stripe3DS2 b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Stripe3DS2 new file mode 100755 index 0000000000..44efb6918c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/Stripe3DS2 differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/_CodeSignature/CodeResources b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/_CodeSignature/CodeResources new file mode 100644 index 0000000000..d856255767 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/_CodeSignature/CodeResources @@ -0,0 +1,1003 @@ + + + + + files + + Assets.car + + K4ddGkUJlXGtYXl7QG4DaCiQKwg= + + Headers/STDSAlreadyInitializedException.h + + KFb71y1hI4w1R3xDhuELOgcQr5s= + + Headers/STDSAuthenticationRequestParameters.h + + 8EKDN3mKXlm2pwHA3AmIZTQK+oU= + + Headers/STDSAuthenticationResponse.h + + ezsikPYNZFfdB0NHtCGDS6rrIcw= + + Headers/STDSButtonCustomization.h + + chFDzTIM6k9WTvDQRwi0QEnj/wI= + + Headers/STDSChallengeParameters.h + + tLbEKNXogKOF9j8rN37cQHyRCEo= + + Headers/STDSChallengeStatusReceiver.h + + 0io1Utb3IhPZvZzD8T2qOcUYp1g= + + Headers/STDSCompletionEvent.h + + U23BAc2xWhlC6YG5C63TVqmgRuI= + + Headers/STDSConfigParameters.h + + /KjQHYmVVJw+c8wauJdRn8PiVRc= + + Headers/STDSCustomization.h + + Ds7oUp+eFhlA8sIdXojACidPH4E= + + Headers/STDSErrorMessage.h + + h2neasX3A2gXDIv3nHmaTX/70cI= + + Headers/STDSException.h + + iL8FZLDaXYN+sS1fh54AEHueKFE= + + Headers/STDSFooterCustomization.h + + TG9KXPLtIIWQJ2tWUJBYXd/iupY= + + Headers/STDSInvalidInputException.h + + 5vwUeCFM5OHVhOwDmQ1T8mtYF/s= + + Headers/STDSJSONDecodable.h + + S8h4WRkJKhzqWLG70dHDqc4iOIM= + + Headers/STDSJSONEncodable.h + + iX8ahv9WlRO7rZvb77XQoBCz5xI= + + Headers/STDSJSONEncoder.h + + y5iLiVTGEGMFxpVU4K10YV++4VU= + + Headers/STDSLabelCustomization.h + + 5g1jJ0dk+M69QKYesSdDfzL/VnM= + + Headers/STDSNavigationBarCustomization.h + + NHI+fpX5+j15h5b73L5jupMSP0U= + + Headers/STDSNotInitializedException.h + + 85uczJCE3eRVQIMSD/ffMqYf2Ps= + + Headers/STDSProtocolErrorEvent.h + + bkUKK0rql/OWkuogrJIcDvDEJNM= + + Headers/STDSRuntimeErrorEvent.h + + fr5us8V+D8u8rs5Lu2zDUD7rkMI= + + Headers/STDSRuntimeException.h + + J6UNRQhRKMHAPUk9jiRtYChMHFQ= + + Headers/STDSSelectionCustomization.h + + fAEZSzVsoe1ip2DfzPQa1nySW70= + + Headers/STDSStripe3DS2Error.h + + f/v/+vT1+86AcyarYXzHafU0JpI= + + Headers/STDSSwiftTryCatch.h + + DBK2VZ6hn5/p48dHx/qMvhYo3dA= + + Headers/STDSTextFieldCustomization.h + + aYzQAfJLTWTZ3xcuA86zta2fKAw= + + Headers/STDSThreeDS2Service.h + + GX/yIi9v61s5ZPUw7sFK7yncoKU= + + Headers/STDSThreeDSProtocolVersion.h + + DO4BkY5YmzLwiu94D53onNLg7kY= + + Headers/STDSTransaction.h + + EoymuudX5e6/DCYR37orEwzMsPQ= + + Headers/STDSUICustomization.h + + OHJm7RtIca90bOuxB+3CmYWuhZI= + + Headers/STDSWarning.h + + UJBXLABnJS1Ihj/JAnQegK125SM= + + Headers/Stripe3DS2-Prefix.pch + + hngwCb2HwjQ1hkVOivIMr5mUQn0= + + Headers/Stripe3DS2.h + + uPM3wsEA5JxH+2A5C9C2hkmiJf8= + + Info.plist + + 3Jlj/4u0RT/7gQPcup7YEoqhSKw= + + Modules/module.modulemap + + nj6HQsvH8/WK5v/3KyQshReMNhg= + + amex.der + + snCYjO7JNBJQKkWyMlCA24k7eug= + + da.lproj/Localizable.strings + + hash + + PiyoO9PDSXSDAwcLbykxQTi3s6g= + + optional + + + de.lproj/Localizable.strings + + hash + + shY1Ga9aoUrcV8bDiDfZ2A+Sx5A= + + optional + + + discover.der + + mtG1XxZunvggdgCwFOBv7DD7f/I= + + ec_test.der + + 8s8wt8N7EVfE8bg9XklcGBcWkL4= + + en-GB.lproj/Localizable.strings + + hash + + kUFl6HG0jxpEA/Cjyp0Q22hjoBY= + + optional + + + en.lproj/Localizable.strings + + hash + + NB6JTH0Z9bfgxuOHguVrUY9Ngzk= + + optional + + + es-419.lproj/Localizable.strings + + hash + + btRVd4/cJ8Om1essCg60ZRrtFCE= + + optional + + + es.lproj/Localizable.strings + + hash + + 8aCCiyQsGG/9jSPul31yOK6/6ds= + + optional + + + fi.lproj/Localizable.strings + + hash + + WSqKa0zhnaHO1Iz90kQcdVrqVs8= + + optional + + + fr-CA.lproj/Localizable.strings + + hash + + Z4ahYl69zTB1BMz1j1yoSbaEpVk= + + optional + + + fr.lproj/Localizable.strings + + hash + + qoQPmSCx6ZnCyTI3b91Vjz/40UY= + + optional + + + hu.lproj/Localizable.strings + + hash + + VgN/eSF1owBzG1PEyGx0JX8lX4I= + + optional + + + it.lproj/Localizable.strings + + hash + + 4kpv10yLpplSV5hLfLhcMTmxMTo= + + optional + + + ja.lproj/Localizable.strings + + hash + + Tzit496+7v6blA6GoV2Euro2LeY= + + optional + + + ko.lproj/Localizable.strings + + hash + + 7L4FV8eCPEVx4Vez+YcutGUX/T4= + + optional + + + mastercard.der + + 6QqEKleaktL0+NBwJRdmBAxK8gY= + + mt.lproj/Localizable.strings + + hash + + RMmNqMm6jPWOwX78cxKN4RCqvho= + + optional + + + nb.lproj/Localizable.strings + + hash + + 5k5pjFmmCyJtT2uET8AdNdVMpss= + + optional + + + nl.lproj/Localizable.strings + + hash + + mWW/HJgb03/CZ2D4vInJJa/kMO8= + + optional + + + nn-NO.lproj/Localizable.strings + + hash + + BqBeLtV8ATgKQgQlXTklrXh9dVg= + + optional + + + pt-BR.lproj/Localizable.strings + + hash + + 7dfqKlaJO6DsNszkyFM03R33V80= + + optional + + + pt-PT.lproj/Localizable.strings + + hash + + ono1MuCgYCi64hNyjhzcrT93PFk= + + optional + + + ru.lproj/Localizable.strings + + hash + + XaiYB2RQmzB7Qq/462z1ztVu+Xs= + + optional + + + sv.lproj/Localizable.strings + + hash + + b4esqOwElsQVtyQNkhcwnLTRfbU= + + optional + + + tr.lproj/Localizable.strings + + hash + + 7L/cEAt/RlBi7hrNgWGLxc1vdX4= + + optional + + + ul-test.der + + 1EWoI2W7Bx/yv6rw5Zqa5OPPgkk= + + visa.der + + cIAUXvXkElHLQ1L0+fmxo+SGZps= + + zh-HK.lproj/Localizable.strings + + hash + + qD/sxx9Meqp6dK9rLaDyvBal4+s= + + optional + + + zh-Hans.lproj/Localizable.strings + + hash + + pZcwXmsNJgrXs3tVLZLDQ7sHXkE= + + optional + + + zh-Hant.lproj/Localizable.strings + + hash + + kzE22UeMNM4ySQbm60goy5kxTNs= + + optional + + + + files2 + + Assets.car + + hash2 + + ZMvtm4jFdazqdWhtomsWRR7yBUpSRy2Ew6NdezDUZ0A= + + + Headers/STDSAlreadyInitializedException.h + + hash2 + + LnTjgl00L+nkczuj6z+pQv9uVDryqut42BEtQ/seK2k= + + + Headers/STDSAuthenticationRequestParameters.h + + hash2 + + EERv5Be2WB14RQNKmOWUT8vq63hL3XNVYmVvyHXEzzE= + + + Headers/STDSAuthenticationResponse.h + + hash2 + + L6ekIVfl21LWODjTzrem/BU2OThaF4ft8mtqEklEqsc= + + + Headers/STDSButtonCustomization.h + + hash2 + + j2VVI4o8iGD3F8twP+vJWBQXzQcxtbo0vtAaWwB1p3o= + + + Headers/STDSChallengeParameters.h + + hash2 + + RrQAI5p0R2gml549t72BZMfLcFedGI2mv32Z5uBHh1I= + + + Headers/STDSChallengeStatusReceiver.h + + hash2 + + UPX0mlhugi2IZAzhc7Fn7OzOlZT8R+XfCNlFtuOMLdQ= + + + Headers/STDSCompletionEvent.h + + hash2 + + l7fWoCeTfWaQp3RWwUHtAGviDx9HSVQSJpw04ocAKEI= + + + Headers/STDSConfigParameters.h + + hash2 + + peyc7jFonxP+P/EZZzlj4HI+jWJRfJiZB9EnoJOroUo= + + + Headers/STDSCustomization.h + + hash2 + + wOzGgJL0tGprZkD31yH5wOQ5kQVvWhwRe95BnnpY6hA= + + + Headers/STDSErrorMessage.h + + hash2 + + k/5EDekPZsIXDiQ8ksasl5RdjXJ0K5Vbho6Kyvooiz0= + + + Headers/STDSException.h + + hash2 + + 0So0+UPkBbE4YjdUTEd3JwDj3sk1MTzn9WUZHaAxOEI= + + + Headers/STDSFooterCustomization.h + + hash2 + + c9SavQivzkHIvIb/waPjlOzmk2FpE4GdRmn1dPpLgBw= + + + Headers/STDSInvalidInputException.h + + hash2 + + n2sJ7y8deli2eVXsw3SyCij5x80t8ICrZacexmlG7cQ= + + + Headers/STDSJSONDecodable.h + + hash2 + + odNtMkxzF8JkpR/0ap3aT86Bpk00Bchco1fy9OM2bYg= + + + Headers/STDSJSONEncodable.h + + hash2 + + 4zc8EWmatHx+hlCXHMuW4Wm5IfAM3agewD3n9449938= + + + Headers/STDSJSONEncoder.h + + hash2 + + venzZUvKKRDh/POXihjNcHi1bu441fgBUIMF/FnkcZU= + + + Headers/STDSLabelCustomization.h + + hash2 + + x03noEfNJ4HCMzNF0PsCmmWR+t+sCVMhrLYx6aXOy10= + + + Headers/STDSNavigationBarCustomization.h + + hash2 + + eUjdHILvFoE41/Nx5FA1LlJOFjF0xrOhXsJl9gOpSUc= + + + Headers/STDSNotInitializedException.h + + hash2 + + QNfsydffqMnxp+f9dGX71KslKATLbPPipLmc//1R/Ss= + + + Headers/STDSProtocolErrorEvent.h + + hash2 + + ZxJwUog0UYVqXCvuubkxuCwLmnMSP8BKG6akUy9lALc= + + + Headers/STDSRuntimeErrorEvent.h + + hash2 + + 29ahc1s0wfgPZBrmMk5dbxiOe38CiKQTWoCWy/KcRl8= + + + Headers/STDSRuntimeException.h + + hash2 + + AThN7K/9V9KjbhpTJdleRxti0gXNJCaqcsHPs2J5KfA= + + + Headers/STDSSelectionCustomization.h + + hash2 + + jMn7PULZ4b3kbhCp9+UK8AVBtbZ8sGM1XlL6yfOP9/Y= + + + Headers/STDSStripe3DS2Error.h + + hash2 + + oU9WLPdFz8ZCabQZiqxSPVBSyxxnCqQphMWY8nQJj+4= + + + Headers/STDSSwiftTryCatch.h + + hash2 + + nlk8KPcafh0wYs4sc7zhfHnNlobxfAU25R07LWKB4Lg= + + + Headers/STDSTextFieldCustomization.h + + hash2 + + /u4CTleR71rYIu3lVIRnzNSmareZ9s6Ehz1gPh91Ic8= + + + Headers/STDSThreeDS2Service.h + + hash2 + + dGDum2PqbuZ0sUTjBnVYNBBAjhu64SUvPytKeTdo5K4= + + + Headers/STDSThreeDSProtocolVersion.h + + hash2 + + HA9L+QuT0THnJ3cdBiViveK1LTWR/OL8ZrxixgCvjfc= + + + Headers/STDSTransaction.h + + hash2 + + W268IWyRjD40pPzNSyq0qwXdJCPLfCOjPB4pIqFzybk= + + + Headers/STDSUICustomization.h + + hash2 + + xIKZrekuaSjFdzSuOPlBVptJh0pqHg6lSj8QcSuGRyQ= + + + Headers/STDSWarning.h + + hash2 + + OoAjwT0USJ+zm9BWAftf9xRMnvZx9Hl3tSVZEsC5gn4= + + + Headers/Stripe3DS2-Prefix.pch + + hash2 + + uS6K6gmWuwdnzKD9N0F0SB4GK+VSSDq7kKliKRLCRsI= + + + Headers/Stripe3DS2.h + + hash2 + + Ye/nqG5YQEKe3z27lGW7hxb/cs1xRdk01+Ae8lZG9QA= + + + Modules/module.modulemap + + hash2 + + k2OxvME22TD4va/hicMSI+P3jwtV31nQXTI83ktpCSc= + + + amex.der + + hash2 + + NCdEoR4qX8+jU/9n2UrGR1Qig9nt5YCYbGnqJ1YpTLk= + + + da.lproj/Localizable.strings + + hash2 + + qyZDkvaWgICXl2Mu+0gbpkWxbEcBWSmPgx5C4bLPAOk= + + optional + + + de.lproj/Localizable.strings + + hash2 + + Xt2J95YXtbIxeomk26OxDk8xQObERtIzL+zXetuck2s= + + optional + + + discover.der + + hash2 + + 4nn4l1pT+G9RaE4XQSdTDFZvZGdIM3dOEDG6qIJofUA= + + + ec_test.der + + hash2 + + Zh/1Qh8otkIB55J3H8D0LXRSugBhUpbR4XtBNCQ6BE4= + + + en-GB.lproj/Localizable.strings + + hash2 + + tUCoRd4nS7NyCOYohPpAXhs+UWLx6W0UbpYPRKF3gMY= + + optional + + + en.lproj/Localizable.strings + + hash2 + + 27aQZTjUYaDFueFper9CNl3sQ7KEOLUmiLZqrnCeELQ= + + optional + + + es-419.lproj/Localizable.strings + + hash2 + + 4+Uv1Ru5/bfGWhdD7aXpbZN5RrVO6ZwAmNIWeOV4HOA= + + optional + + + es.lproj/Localizable.strings + + hash2 + + BlrmfUt6r0Q5fjGcAutXBD4+Wx0Kef66Cs7LeYXL+no= + + optional + + + fi.lproj/Localizable.strings + + hash2 + + cA33pzoa/4kUJSSvX8JzBAD++y53whTx84qhTXQTlfw= + + optional + + + fr-CA.lproj/Localizable.strings + + hash2 + + Py5wRNxX/HfLQK0ftXzKebfKqyqzdKumeTGtny6A44A= + + optional + + + fr.lproj/Localizable.strings + + hash2 + + 7Y8PKxKRt2sxZxRN5WvNjm4Xga98hQ9jmSzPbk3ux88= + + optional + + + hu.lproj/Localizable.strings + + hash2 + + 1ilqSSe5dDWI570QhlCTy2WwYddbnmc8czd7wpiDk8w= + + optional + + + it.lproj/Localizable.strings + + hash2 + + RyxP6Xai47GCO0wpvKWti+jD0acP9gvE9xjQjHRUzpM= + + optional + + + ja.lproj/Localizable.strings + + hash2 + + 6uI8GbjQkL9WTAdnB/FR4vjwfIAn506Qjqof5PSdRt4= + + optional + + + ko.lproj/Localizable.strings + + hash2 + + +7fFDjer4DEy/0lRvvD3QCtUKsFBM9IiWtwU8AWy484= + + optional + + + mastercard.der + + hash2 + + E5nZdBQA7MOlJ4biYm1610cIexUboNPdGxAffXrw+Lw= + + + mt.lproj/Localizable.strings + + hash2 + + rJFSjAolrM07AgL2i4FJ8KUeaj2R5z9Ogx2nJJyKBJo= + + optional + + + nb.lproj/Localizable.strings + + hash2 + + 66w9rsc7b/jeM8TuFR25xFAJi5azcZ5jaTSqGKztYjk= + + optional + + + nl.lproj/Localizable.strings + + hash2 + + 8wkpd0kH47bErz5dyIwRvAky+vRzr84r37x4x1lVL4s= + + optional + + + nn-NO.lproj/Localizable.strings + + hash2 + + TVX4uGpa/Yu0CrLChqf1F9iwWg/GedWrXOMApo/pAtE= + + optional + + + pt-BR.lproj/Localizable.strings + + hash2 + + bkCN+x42qKE/Q7SDNG2x3HPYtHs5pRdqgXLUYXNpCkI= + + optional + + + pt-PT.lproj/Localizable.strings + + hash2 + + rEvkLFGucwCcunCDuih1+GsnZpvFjpn+uU2PPRr88FI= + + optional + + + ru.lproj/Localizable.strings + + hash2 + + 7Ws4v3UdtvFPaBcCUIfhlSCQtOvqZtbpkYWZlN4BvQU= + + optional + + + sv.lproj/Localizable.strings + + hash2 + + rCRYC8hwonm5IvCGDh07reIXoPVt6dsd/ajlwh1k+B8= + + optional + + + tr.lproj/Localizable.strings + + hash2 + + iqLom2NpJjvmlswYStHb3j3VzLxw8WPT+2DCBUFiMAg= + + optional + + + ul-test.der + + hash2 + + ym0CPu2VIwYjDK3FHgE1y1xJG8wRaMM1/gD85b0Y8yU= + + + visa.der + + hash2 + + lkOAq2XG0NwIMcVOGHKM+JdnPyJRxAhQ01if+ubR03s= + + + zh-HK.lproj/Localizable.strings + + hash2 + + MjlqF0maqYTdPZbia5aPWp5re1V4U6IXlU9RRldGArI= + + optional + + + zh-Hans.lproj/Localizable.strings + + hash2 + + SqyHevjJK0YndrivRl+RW3EJBZZ6nlrRcBLNaB4xL4U= + + optional + + + zh-Hant.lproj/Localizable.strings + + hash2 + + y6pGC8+eBGAzJY3KqpZRmREw3vkqdXR81OvvI2n/bdc= + + optional + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/amex.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/amex.der new file mode 100644 index 0000000000..61a1cfd1f0 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/amex.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/da.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/da.lproj/Localizable.strings new file mode 100644 index 0000000000..5ec99f659f Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/da.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/de.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/de.lproj/Localizable.strings new file mode 100644 index 0000000000..4a7102c290 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/de.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/discover.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/discover.der new file mode 100644 index 0000000000..5b17935a35 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/discover.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ec_test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ec_test.der new file mode 100644 index 0000000000..06587c44c3 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ec_test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en-GB.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en-GB.lproj/Localizable.strings new file mode 100644 index 0000000000..f3dd661b06 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en-GB.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en.lproj/Localizable.strings new file mode 100644 index 0000000000..2440abd600 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/en.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es-419.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es-419.lproj/Localizable.strings new file mode 100644 index 0000000000..415dd67a13 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es-419.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es.lproj/Localizable.strings new file mode 100644 index 0000000000..361e4c382e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/es.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fi.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fi.lproj/Localizable.strings new file mode 100644 index 0000000000..69e9adf5e5 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fi.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings new file mode 100644 index 0000000000..9d0943f90d Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr-CA.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr.lproj/Localizable.strings new file mode 100644 index 0000000000..85e6a6a49c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/fr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/hu.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/hu.lproj/Localizable.strings new file mode 100644 index 0000000000..83c4802687 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/hu.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/it.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/it.lproj/Localizable.strings new file mode 100644 index 0000000000..a513ed333c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/it.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ja.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ja.lproj/Localizable.strings new file mode 100644 index 0000000000..b63f7e5bf8 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ja.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ko.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ko.lproj/Localizable.strings new file mode 100644 index 0000000000..d984c0bbbd Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ko.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mastercard.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mastercard.der new file mode 100644 index 0000000000..6e136e1331 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mastercard.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mt.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mt.lproj/Localizable.strings new file mode 100644 index 0000000000..23cbe6a691 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/mt.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nb.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nb.lproj/Localizable.strings new file mode 100644 index 0000000000..8bbcf6499b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nb.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nl.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nl.lproj/Localizable.strings new file mode 100644 index 0000000000..b3d20eeaf2 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nl.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings new file mode 100644 index 0000000000..e676f72eda Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/nn-NO.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings new file mode 100644 index 0000000000..28945ef8ad Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-BR.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings new file mode 100644 index 0000000000..1565f5ba60 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/pt-PT.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ru.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ru.lproj/Localizable.strings new file mode 100644 index 0000000000..e66e7d76f4 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ru.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/sv.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/sv.lproj/Localizable.strings new file mode 100644 index 0000000000..b3993c5f1e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/sv.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/tr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/tr.lproj/Localizable.strings new file mode 100644 index 0000000000..c5af6aee58 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/tr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ul-test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ul-test.der new file mode 100644 index 0000000000..11e5f29b3b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/ul-test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/visa.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/visa.der new file mode 100644 index 0000000000..a77735dfa6 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/visa.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings new file mode 100644 index 0000000000..393154ffa7 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-HK.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000000..9d046f8d31 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hans.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings new file mode 100644 index 0000000000..b5183ce460 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/Stripe3DS2.framework/zh-Hant.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Headers b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Headers new file mode 120000 index 0000000000..a177d2a6b9 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Modules b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Modules new file mode 120000 index 0000000000..5736f3186e --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Modules @@ -0,0 +1 @@ +Versions/Current/Modules \ No newline at end of file diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Resources b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Resources new file mode 120000 index 0000000000..953ee36f3b --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Stripe3DS2 b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Stripe3DS2 new file mode 120000 index 0000000000..c2d9382fb6 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Stripe3DS2 @@ -0,0 +1 @@ +Versions/Current/Stripe3DS2 \ No newline at end of file diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAlreadyInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAlreadyInitializedException.h new file mode 100644 index 0000000000..c39a85d8cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAlreadyInitializedException.h @@ -0,0 +1,22 @@ +// +// STDSAlreadyInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSAlreadyInitializedException` represents an exception that will be thrown in the `STDSThreeDS2Service` instance has already been initialized. + + @see STDSThreeDS2Service + */ +@interface STDSAlreadyInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationRequestParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationRequestParameters.h new file mode 100644 index 0000000000..766e48578c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationRequestParameters.h @@ -0,0 +1,68 @@ +// +// STDSAuthenticationRequestParameters.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface STDSAuthenticationRequestParameters : NSObject + +/** + Designated initializer for `STDSAuthenticationRequestParameters`. + + @param sdkTransactionIdentifier The SDK Transaction Identifier, as created by `[STDSTransaction createTransaction]` + @param deviceData Optional device data collected by the SDK. + @param sdkEphemeralPublicKey The SDK ephemeral public key. + @param sdkAppIdentifier The SDK app identifier. + @param sdkReferenceNumber The SDK reference number. + @param messageVersion The protocol version that is supported by the SDK and used for the transaction. + + @exception InvalidInputException Thrown if an input parameter is invalid. @see InvalidInputException + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)sdkTransactionIdentifier + deviceData:(nullable NSString *)deviceData + sdkEphemeralPublicKey:(NSString *)sdkEphemeralPublicKey + sdkAppIdentifier:(NSString *)sdkAppIdentifier + sdkReferenceNumber:(NSString *)sdkReferenceNumber + messageVersion:(NSString *)messageVersion; + +/** + The encrypted device data as a JWE string. + */ +@property (nonatomic, readonly, nullable) NSString *deviceData; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The SDK App Identifier. + */ +@property (nonatomic, readonly) NSString *sdkAppIdentifier; + +/** + The SDK reference number. + */ +@property (nonatomic, readonly) NSString *sdkReferenceNumber; + +/** + The SDK ephemeral public key. + */ +@property (nonatomic, readonly) NSString *sdkEphemeralPublicKey; + +/** + The protocol version that is used for the transaction. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationResponse.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationResponse.h new file mode 100644 index 0000000000..d527f38df9 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSAuthenticationResponse.h @@ -0,0 +1,115 @@ +// +// STDSAuthenticationResponse.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSACSStatusType` enum defines the status of a transaction, as detailed in + 3DS2 Spec Seq 3.33: + */ +typedef NS_ENUM(NSInteger, STDSACSStatusType) { + /// The status is unknown or invalid + STDSACSStatusTypeUnknown = 0, + + /// Authenticated + STDSACSStatusTypeAuthenticated = 1, + + /// Requires a Cardholder challenge to complete authentication + STDSACSStatusTypeChallengeRequired = 2, + + /// Requires a Cardholder challenge using Decoupled Authentication + STDSACSStatusTypeDecoupledAuthentication = 3, + + /// Not authenticated + STDSACSStatusTypeNotAuthenticated = 4, + + /// Not authenticated, but a proof of authentication attempt (Authentication Value) + /// was generated + STDSACSStatusTypeProofGenerated = 5, + + /// Not authenticated, as authentication could not be performed due to technical or + /// other issue + STDSACSStatusTypeError = 6, + + /// Not authenticated because the Issuer is rejecting authentication and requesting + /// that authorisation not be attempted + STDSACSStatusTypeRejected = 7, + + /// Authentication not requested by the 3DS Server for data sent for informational + /// purposes only + STDSACSStatusTypeInformationalOnly = 8, +}; + +/** + A native protocol representing the response sent by the 3DS Server. + Only parameters relevant to performing 3DS2 authentication in the mobile SDK are exposed. + */ +@protocol STDSAuthenticationResponse + +/// Universally unique transaction identifier assigned by the 3DS Server to identify a single transaction. +@property (nonatomic, readonly) NSString *threeDSServerTransactionID; + +/// Transaction status +@property (nonatomic, readonly) STDSACSStatusType status; + +/// Indication of whether a challenge is required. +@property (nonatomic, readonly, getter=isChallengeRequired) BOOL challengeRequired; + +/// Indicates whether the ACS confirms utilisation of Decoupled Authentication and agrees to utilise Decoupled Authentication to authenticate the Cardholder. +@property (nonatomic, readonly) BOOL willUseDecoupledAuthentication; + +/** + DS assigned ACS identifier. + Each DS can provide a unique ID to each ACS on an individual basis. + */ +@property (nonatomic, readonly, nullable) NSString *acsOperatorID; + +/// Unique identifier assigned by the EMVCo Secretariat upon Testing and Approval. +@property (nonatomic, readonly, nullable) NSString *acsReferenceNumber; + +/// Contains the JWS object (represented as a string) created by the ACS for the ARes message. +@property (nonatomic, readonly, nullable) NSString *acsSignedContent; + +/// Universally Unique transaction identifier assigned by the ACS to identify a single transaction. +@property (nonatomic, readonly) NSString *acsTransactionID; + +/// Fully qualified URL of the ACS to be used for the challenge. +@property (nonatomic, readonly, nullable) NSURL *acsURL; + +/** + Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction. The Issuer can provide information to Cardholder. + For example, “Additional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.” + */ +@property (nonatomic, readonly, nullable) NSString *cardholderInfo; + +/// EMVCo-assigned unique identifier to track approved DS. +@property (nonatomic, readonly, nullable) NSString *directoryServerReferenceNumber; + +/// Universally unique transaction identifier assigned by the DS to identify a single transaction. +@property (nonatomic, readonly, nullable) NSString *directoryServerTransactionID; + +/** + Protocol version identifier This shall be the Protocol Version Number of the specification utilised by the system creating this message. + The Message Version Number is set by the 3DS Server which originates the protocol with the AReq message. + The Message Version Number does not change during a 3DS transaction. + */ +@property (nonatomic, readonly) NSString *protocolVersion; + +/// Universally unique transaction identifier assigned by the 3DS SDK to identify a single transaction. +@property (nonatomic, readonly) NSString *sdkTransactionID; + +@end + +/// A utility to parse an STDSAuthenticationResponse from JSON +id _Nullable STDSAuthenticationResponseFromJSON(NSDictionary *json); + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSButtonCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSButtonCustomization.h new file mode 100644 index 0000000000..dd63f9820a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSButtonCustomization.h @@ -0,0 +1,83 @@ +// +// STDSButtonCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// +#import +#import + +#import "STDSCustomization.h" + +/// An enum that defines the different types of buttons that are able to be customized. +typedef NS_ENUM(NSInteger, STDSUICustomizationButtonType) { + + /// The submit button type. + STDSUICustomizationButtonTypeSubmit = 0, + + /// The continue button type. + STDSUICustomizationButtonTypeContinue = 1, + + /// The next button type. + STDSUICustomizationButtonTypeNext = 2, + + /// The cancel button type. + STDSUICustomizationButtonTypeCancel = 3, + + /// The resend button type. + STDSUICustomizationButtonTypeResend = 4, +}; + +/// An enumeration of the case transformations that can be applied to the button's title +typedef NS_ENUM(NSInteger, STDSButtonTitleStyle) { + /// Default style, doesn't modify the title + STDSButtonTitleStyleDefault, + + /// Applies localizedUppercaseString to the title + STDSButtonTitleStyleUppercase, + + /// Applies localizedLowercaseString to the title + STDSButtonTitleStyleLowercase, + + /// Applies localizedCapitalizedString to the title + STDSButtonTitleStyleSentenceCapitalized, +}; + +NS_ASSUME_NONNULL_BEGIN + +/// A customization object to use to configure the UI of a button. +@interface STDSButtonCustomization: STDSCustomization + +/// The default settings for the provided button type. ++ (instancetype)defaultSettingsForButtonType:(STDSUICustomizationButtonType)type; + +/** + Initializes an instance of STDSButtonCustomization with the given backgroundColor and colorRadius. + */ +- (instancetype)initWithBackgroundColor:(UIColor *)backgroundColor cornerRadius:(CGFloat)cornerRadius; + +/** + This is unavailable because there are no sensible default property values without a button type. + Use `defaultSettingsForButtonType:` or `initWithBackgroundColor:cornerRadius:` instead. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The background color of the button. + The default for .resend and .cancel is clear. + The default for .submit, .continue, and .next is blue. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The corner radius of the button. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/** + The capitalization style of the button title + */ +@property (nonatomic) STDSButtonTitleStyle titleStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeParameters.h new file mode 100644 index 0000000000..e1aa151cdc --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeParameters.h @@ -0,0 +1,61 @@ +// +// STDSChallengeParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@protocol STDSAuthenticationResponse; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSChallengeParameters` contains information from the 3DS Server's + authentication response that are used by the 3DS2 SDK to initiate + the challenge flow. + */ +@interface STDSChallengeParameters : NSObject + +/** + Convenience intiializer to create an instace of `STDSChallengeParameters` from an + `STDSAuthenticationResponse` + */ +- (instancetype)initWithAuthenticationResponse:(id)authResponse; + +/** + Transaction identifier assigned by the 3DS Server to uniquely identify + a transaction. + */ +@property (nonatomic, copy) NSString *threeDSServerTransactionID; + +/** + Transaction identifier assigned by the Access Control Server (ACS) + to uniquely identify a transaction. + */ +@property (nonatomic, copy) NSString *acsTransactionID; + +/** + The reference number of the relevant Access Control Server. + */ +@property (nonatomic, copy) NSString *acsReferenceNumber; + +/** + The encrypted message sent by the Access Control Server + containing the ACS URL, epthemeral public key, and the + 3DS2 SDK ephemeral public key. + */ +@property (nonatomic, copy) NSString *acsSignedContent; + +/** + The URL for the application that is requesting 3DS2 verification. + This property can be optionally set and will be included with the + messages sent to the Directory Server during the challenge flow. + */ +@property (nonatomic, copy, nullable) NSString *threeDSRequestorAppURL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeStatusReceiver.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeStatusReceiver.h new file mode 100644 index 0000000000..a06a32bb93 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSChallengeStatusReceiver.h @@ -0,0 +1,61 @@ +// +// STDSChallengeStatusReceiver.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +@class STDSTransaction, STDSCompletionEvent, STDSRuntimeErrorEvent, STDSProtocolErrorEvent; + +NS_ASSUME_NONNULL_BEGIN + +/** + Implement the `STDSChallengeStatusReceiver` protocol to receive challenge status notifications at the end of the challenge process. + @see `STDSTransaction.doChallenge` + */ +@protocol STDSChallengeStatusReceiver + +/** + Called when the challenge process is completed. + + @param completionEvent Information about the completion of the challenge process. @see `STDSCompletionEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didCompleteChallengeWithCompletionEvent:(STDSCompletionEvent *)completionEvent; + +/** + Called when the user selects the option to cancel the transaction on the challenge screen. + */ +- (void)transactionDidCancel:(STDSTransaction *)transaction; + +/** + Called when the challenge process reaches or exceeds the timeout interval that was passed to `STDSTransaction.doChallenge` + */ +- (void)transactionDidTimeOut:(STDSTransaction *)transaction; + +/** + Called when the 3DS SDK receives an EMV 3-D Secure protocol-defined error message from the ACS. + + @param protocolErrorEvent The error code and details. @see `STDSProtocolErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithProtocolErrorEvent:(STDSProtocolErrorEvent *)protocolErrorEvent; + +/** + Called when the 3DS SDK encounters errors during the challenge process. These errors include all errors except those covered by `didErrorWithProtocolErrorEvent`. + + @param runtimeErrorEvent The error code and details. @see `STDSRuntimeErrorEvent` + */ +- (void)transaction:(STDSTransaction *)transaction didErrorWithRuntimeErrorEvent:(STDSRuntimeErrorEvent *)runtimeErrorEvent; + +@optional + +/** + Optional method that will be called when the transaction displays a new challenge screen. + */ +- (void)transactionDidPresentChallengeScreen:(STDSTransaction *)transaction; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCompletionEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCompletionEvent.h new file mode 100644 index 0000000000..851c71dbe2 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCompletionEvent.h @@ -0,0 +1,40 @@ +// +// STDSCompletionEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSCompletionEvent` contains information about completion of the challenge process. + */ +@interface STDSCompletionEvent : NSObject + +/** + Designated initializer for `STDSCompletionEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier transactionStatus:(NSString *)transactionStatus NS_DESIGNATED_INITIALIZER; + +/** + `STDSCompletionEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The SDK Transaction ID. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +/** + The transaction status that was received in the final challenge response. + */ +@property (nonatomic, readonly) NSString *transactionStatus; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSConfigParameters.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSConfigParameters.h new file mode 100644 index 0000000000..4d77ba5d5a --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSConfigParameters.h @@ -0,0 +1,96 @@ +// +// STDSConfigParameters.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The default group name that will be used to group additional + configuration parameters. + */ +extern NSString * const kSTDSConfigDefaultGroupName; + +/** + `STDSConfigParameters` represents additional configuration parameters + that can be passed to the Stripe3DS2 SDK during initialization. + + There are currently no supported additional parameters and apps can + just pass `[STDSConfigParameters alloc] initWithStandardParameters` + to the `STDSThreeDS2Service` instance. + */ +@interface STDSConfigParameters : NSObject + +/** + Convenience initializer to get an `STDSConfigParameters` instance + with the default expected configuration parameters. + */ +- (instancetype)initWithStandardParameters; + +/** + Adds the parameter to this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + @param paramGroup The group to which this parameter will be added. If `nil` the parameter will be added to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue toGroup:(nullable NSString *)paramGroup; + +/** + Adds the parameter to the default group in this instance. + + @param paramName The name of the parameter to add + @param paramValue The value of the parameter to add + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` or `paramValue` are `nil`. @see STDSInvalidInputException + */ +- (void)addParameterNamed:(NSString *)paramName withValue:(NSString *)paramValue; + +/** + Returns the value for `paramName` in `paramGroup` or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + @param paramGroup The group from which to fetch the parameter value. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName inGroup:(nullable NSString *)paramGroup; + +/** + Returns the value for `paramName` in the default group or `nil` if the parameter value is not set. + + @param paramName The name of the parameter to return + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)parameterValue:(NSString *)paramName; + +/** + Removes the specified parameter from the group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + @param paramGroup The group from which to remove this parameter. If `nil` will default to `kSTDSConfigDefaultGroupName` + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName fromGroup:(nullable NSString *)paramGroup; + +/** + Removes the specified parameter from the default group and returns the value or `nil` if the parameter was not found. + + @param paramName The name of the parameter to remove + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `paramName` is `nil`. @see STDSInvalidInputException + */ +- (nullable NSString *)removeParameterNamed:(NSString *)paramName; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCustomization.h new file mode 100644 index 0000000000..516eff9e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSCustomization.h @@ -0,0 +1,25 @@ +// +// STDSCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +/// This class provides a common set of customization parameters, used to customize elements of the UI. +@interface STDSCustomization : NSObject + +/// The font to use for text. +@property (nonatomic, nullable) UIFont *font; + +/// The color to use for the text. +@property (nonatomic, nullable) UIColor *textColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSErrorMessage.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSErrorMessage.h new file mode 100644 index 0000000000..35bce4a305 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSErrorMessage.h @@ -0,0 +1,108 @@ +// +// STDSErrorMessage.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" +#import "STDSJSONDecodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/// Error codes as defined by the 3DS2 spec. +typedef NS_ENUM(NSInteger, STDSErrorMessageCode) { + /// The SDK received a message that is not an ARes, CRes, or ErrorMessage. + STDSErrorMessageCodeInvalidMessage = 101, + + /// A required data element is missing from the network response. + STDSErrorMessageCodeRequiredDataElementMissing = 201, + + // Critical message extension not recognised + STDSErrorMessageCodeUnrecognizedCriticalMessageExtension = 202, + + /// A data element is not in the required format or the value is invalid. + STDSErrorMessageErrorInvalidDataElement = 203, + + // Transaction ID not recognized + STDSErrorMessageErrorTransactionIDNotRecognized = 301, + + /// A network response could not be decrypted or verified. + STDSErrorMessageErrorDataDecryptionFailure = 302, + + /// The SDK timed out + STDSErrorMessageErrorTimeout = 402, +}; + +/** + `STDSErrorMessage` represents an error message that is returned by the ACS or to be sent to the ACS. + */ +@interface STDSErrorMessage : NSObject + +/** + Designated initializer for `STDSErrorMessage`. + + @param errorCode The error code. + @param errorComponent The component that identified the error. + @param errorDescription Text describing the error. + @param errorDetails Additional error details. Optional. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode + errorComponent:(NSString *)errorComponent + errorDescription:(NSString *)errorDescription + errorDetails:(nullable NSString *)errorDetails + messageVersion:(NSString *)messageVersion + acsTransactionIdentifier:(nullable NSString *)acsTransactionIdentifier + errorMessageType:(NSString *)errorMessageType; + +/** + `STDSErrorMessage` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The error code. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + The 3-D Secure component that identified the error. + */ +@property (nonatomic, readonly) NSString *errorComponent; + +/** + Text describing the error. + */ +@property (nonatomic, readonly) NSString *errorDescription; + +/** + Additional error details. + */ +@property (nonatomic, nullable, readonly) NSString *errorDetails; + +/** + The protocol version identifier. + */ +@property (nonatomic, readonly) NSString *messageVersion; + +/** + The ACS transaction identifier. + */ +@property (nonatomic, readonly, nullable) NSString *acsTransactionIdentifier; + +/** + The message type that was identified as erroneous. + */ +@property (nonatomic, readonly) NSString *errorMessageType; + +/** + A representation of the `STDSErrorMessage` as an `NSError` + */ +- (NSError *)NSErrorValue; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSException.h new file mode 100644 index 0000000000..1f2c5ecdf8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSException.h @@ -0,0 +1,25 @@ +// +// STDSException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + An abstract class to represent 3DS2 SDK custom exceptions + */ +@interface STDSException : NSException + +/** + A description of the exception. + */ +@property (nonatomic, readonly) NSString *message; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSFooterCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSFooterCustomization.h new file mode 100644 index 0000000000..990ffd9b25 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSFooterCustomization.h @@ -0,0 +1,41 @@ +// +// STDSFooterCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/10/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The Challenge view displays a footer with additional details that + expand when tapped. This object configures the appearance of that view. +*/ +@interface STDSFooterCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The background color of the footer. + Defaults to gray. + */ +@property (nonatomic) UIColor *backgroundColor; + +/// The color of the chevron. Defaults to a dark gray. +@property (nonatomic) UIColor *chevronColor; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSInvalidInputException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSInvalidInputException.h new file mode 100644 index 0000000000..b30d4e1079 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSInvalidInputException.h @@ -0,0 +1,21 @@ +// +// STDSInvalidInputException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSInvalidInputException` represents an exception that will be thrown by + Stripe3DS2 SDK methods that are called with invalid input arguments. + */ +@interface STDSInvalidInputException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONDecodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONDecodable.h new file mode 100644 index 0000000000..f93428acf7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONDecodable.h @@ -0,0 +1,33 @@ +// +// STDSJSONDecodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONDecodable + +/** + Initializes an instance of the class from its JSON representation. + + This method recognizes two categories of errors: + - a required field is missing. + - a required field value is in valid (e.g. expected 'Y' or 'N' but received 'X'). + + Errors populating optional fields are ignored. + + @param json The JSON dictionary that represents an object of this type + @param outError If there was a missing required field or invalid field value, contains an instance of NSError. + + @return The object represented by the JSON dictionary. If the object could not be decoded, returns nil and populates the outError argument. + */ ++ (nullable instancetype)decodedObjectFromJSON:(nullable NSDictionary *)json error:(NSError **)outError; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncodable.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncodable.h new file mode 100644 index 0000000000..9861a23c39 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncodable.h @@ -0,0 +1,22 @@ +// +// STDSJSONEncodable.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol STDSJSONEncodable + +/** + Returns a map of property names to their JSON representation's key value. For example, `STDSChallengeParameters` has a property called `acsTransactionID`, but the 3DS2 JSON spec expects a field called `acsTransID`. This dictionary represents a mapping from the former to the latter (in other words, [STDSChallengeParameters propertyNamesToJSONKeysMapping][@"acsTransactionID"] == @"acsTransID".) + */ ++ (NSDictionary *)propertyNamesToJSONKeysMapping; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncoder.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncoder.h new file mode 100644 index 0000000000..7ccc07e613 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSJSONEncoder.h @@ -0,0 +1,27 @@ +// +// STDSJSONEncoder.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/25/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSJSONEncodable.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSJSONEncoder` is a utility class to help with converting API objects into JSON + */ +@interface STDSJSONEncoder : NSObject + +/** + Method to convert an STDSJSONEncodable object into a JSON dictionary. + */ ++ (NSDictionary *)dictionaryForObject:(NSObject *)object; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSLabelCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSLabelCustomization.h new file mode 100644 index 0000000000..af75cf39dd --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSLabelCustomization.h @@ -0,0 +1,31 @@ +// +// STDSLabelCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text label. + + The font and textColor inherited from `STDSCustomization` configure non-heading labels. + */ +@interface STDSLabelCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/// The color of the heading text. Defaults to black. +@property (nonatomic) UIColor *headingTextColor; + +/// The font to use for the heading text. +@property (nonatomic) UIFont *headingFont; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNavigationBarCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNavigationBarCustomization.h new file mode 100644 index 0000000000..18affaaf74 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNavigationBarCustomization.h @@ -0,0 +1,59 @@ +// +// STDSNavigationBarCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure a UINavigationBar. + + The font and textColor inherited from `STDSCustomization` configure the + title of the navigation bar, and default to nil. + */ +@interface STDSNavigationBarCustomization : STDSCustomization + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The tint color of the navigation bar background. + Defaults to nil. + */ +@property (nonatomic, nullable) UIColor *barTintColor; + +/** + The navigation bar style. + Defaults to UIBarStyleDefault. + */ +@property (nonatomic) UIBarStyle barStyle; + +/** + A Boolean value indicating whether the navigation bar is translucent or not. + Defaults to YES. + */ +@property (nonatomic) BOOL translucent; + +/** + The text to display in the title of the navigation bar. + Defaults to "Secure checkout". + */ +@property (nonatomic, copy) NSString *headerText; + +/** + The text to display for the button in the navigation bar. + Defaults to "Cancel". + */ +@property (nonatomic, copy) NSString *buttonText; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNotInitializedException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNotInitializedException.h new file mode 100644 index 0000000000..cb836d5e83 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSNotInitializedException.h @@ -0,0 +1,23 @@ +// +// STDSNotInitializedException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/13/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSNotInitializedException` represents an exception that will be thrown by + the the Stripe3DS2 SDK if methods are called without initializing `STDSThreeDS2Service`. + + @see STDSThreeDS2Service + */ +@interface STDSNotInitializedException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSProtocolErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSProtocolErrorEvent.h new file mode 100644 index 0000000000..1e3142a722 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSProtocolErrorEvent.h @@ -0,0 +1,42 @@ +// +// STDSProtocolErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSErrorMessage; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSProtocolErrorEvent` contains details about erorrs received from or sent to the ACS. + */ +@interface STDSProtocolErrorEvent : NSObject + +/** + Designated initializer for `STDSProtocolErrorEvent`. + */ +- (instancetype)initWithSDKTransactionIdentifier:(NSString *)identifier errorMessage:(STDSErrorMessage *)errorMessage; + +/** + `STDSProtocolErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + Details about the error. + */ +@property (nonatomic, readonly) STDSErrorMessage *errorMessage; + +/** + The SDK Transaction Identifier. + */ +@property (nonatomic, readonly) NSString *sdkTransactionIdentifier; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeErrorEvent.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeErrorEvent.h new file mode 100644 index 0000000000..658cdb90cb --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeErrorEvent.h @@ -0,0 +1,53 @@ +// +// STDSRuntimeErrorEvent.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/20/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeParsingError; +FOUNDATION_EXTERN NSString * const kSTDSRuntimeErrorCodeEncryptionError; + +/** + `STDSRuntimeErrorEvent` contains details about run-time errors encountered during authentication. + + The following are examples of run-time errors: + - ACS is unreachable + - Unparseable message + - Network issues + */ +@interface STDSRuntimeErrorEvent : NSObject + +/** + A code corresponding to the type of error this represents. + */ +@property (nonatomic, readonly) NSString *errorCode; + +/** + Details about the error. + */ +@property (nonatomic, readonly) NSString *errorMessage; + +/** + Designated initializer for `STDSRuntimeErrorEvent`. + */ +- (instancetype)initWithErrorCode:(NSString *)errorCode errorMessage:(NSString *)errorMessage NS_DESIGNATED_INITIALIZER; + +/** + A representation of the `STDSRuntimeErrorEvent` as an `NSError` + */ +- (NSError *)NSErrorValue; + +/** + `STDSRuntimeErrorEvent` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeException.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeException.h new file mode 100644 index 0000000000..5b63a2d3bf --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSRuntimeException.h @@ -0,0 +1,21 @@ +// +// STDSRuntimeException.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import "STDSException.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSRuntimeException` represents an exception that will be thrown by the + Stripe3DS2 SDK if it encounters an internal error. + */ +@interface STDSRuntimeException : STDSException + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSelectionCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSelectionCustomization.h new file mode 100644 index 0000000000..a9818bb988 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSelectionCustomization.h @@ -0,0 +1,48 @@ +// +// STDSSelectionCustomization.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 6/11/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object that configures the appearance of + radio buttons and checkboxes. + */ +@interface STDSSelectionCustomization: NSObject + +/// The default settings. ++ (instancetype)defaultSettings; + +/** + The primary color of the selected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *primarySelectedColor; + +/** + The secondary color of the selected state (e.g. the checkmark color). + Defaults to white. + */ +@property (nonatomic) UIColor *secondarySelectedColor; + +/** + The background color displayed in the unselected state. + Defaults to light blue. + */ +@property (nonatomic) UIColor *unselectedBackgroundColor; + +/** + The color of the border drawn around the view in the unselected state. + Defaults to blue. + */ +@property (nonatomic) UIColor *unselectedBorderColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSStripe3DS2Error.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSStripe3DS2Error.h new file mode 100644 index 0000000000..2e506fe2f4 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSStripe3DS2Error.h @@ -0,0 +1,68 @@ +// +// STDSStripe3DS2Error.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorDomain; + +/** + NSError.userInfo contains this key if we received an ErrorMessage instead of the expected response object. + The value of this key is the ErrorMessage. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorMessageErrorKey; + +/** + NSError.userInfo contains this key if we errored parsing JSON. + The value of this key is the invalid or missing field. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2ErrorFieldKey; + +/** + NSError.userInfo contains this key if we couldn't recognize critical message extension(s) + The value of this key is an array of identifiers. + */ +FOUNDATION_EXPORT NSString * const STDSStripe3DS2UnrecognizedCriticalMessageExtensionsKey; + + +typedef NS_ENUM(NSInteger, STDSErrorCode) { + + /// Code triggered an assertion + STDSErrorCodeAssertionFailed = 204, + + // JSON Parsing + /// Received invalid or malformed data + STDSErrorCodeJSONFieldInvalid = 203, + /// Expected field missing + STDSErrorCodeJSONFieldMissing = 201, + + /// Critical message extension not recognised + STDSErrorCodeUnrecognizedCriticalMessageExtension = 202, + + /// Decryption or verification error + STDSErrorCodeDecryptionVerification = 302, + + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an unparseable network response + STDSErrorCodeRuntimeParsing = 400, + /// Error code corresponding to a `STDSRuntimeErrorEvent` for an error with decrypting or verifying a network response + STDSErrorCodeRuntimeEncryption = 401, + + // Networking + /// We received an ErrorMessage instead of the expected response object. `userInfo[STDSStripe3DS2ErrorMessageErrorKey]` will contain the ErrorMessage object. + STDSErrorCodeReceivedErrorMessage = 1000, + /// We received an unknown message type. + STDSErrorCodeUnknownMessageType = 1001, + /// Request timed out + STDSErrorCodeTimeout = 1002, + + /// Unknown + STDSErrorCodeUnknownError = 2000, +}; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSwiftTryCatch.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSwiftTryCatch.h new file mode 100644 index 0000000000..47443368a7 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSSwiftTryCatch.h @@ -0,0 +1,50 @@ +// +// STDSSwiftTryCatch.h +// +// Created by William Falcon on 10/10/14. +// Copyright (c) 2014 William Falcon. All rights reserved. +// +/* + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ +@interface STDSSwiftTryCatch : NSObject + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ ++ (void)tryBlock:(void(^)(void))tryBlock catchBlock:(void(^)(NSException*exception))catchBlock finallyBlock:(void(^)(void))finallyBlock; +/** + Throws Objective-C exception with name and reason set to `s` + */ ++ (void)throwString:(NSString*)s; + +/** + Throws exception `e` + */ ++ (void)throwException:(NSException*)e; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTextFieldCustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTextFieldCustomization.h new file mode 100644 index 0000000000..6f2bfede11 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTextFieldCustomization.h @@ -0,0 +1,47 @@ +// +// STDSTextFieldCustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +#import "STDSCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + A customization object to use to configure the UI of a text field. + + The font and textColor inherited from `STDSCustomization` configure + the user input text. + */ +@interface STDSTextFieldCustomization : STDSCustomization + +/** + The default settings. + + The default textColor is black. + */ ++ (instancetype)defaultSettings; + +/// The border width of the text field. Defaults to 2. +@property (nonatomic) CGFloat borderWidth; + +/// The color of the border of the text field. Defaults to clear. +@property (nonatomic) UIColor *borderColor; + +/// The corner radius of the edges of the text field. Defaults to 8. +@property (nonatomic) CGFloat cornerRadius; + +/// The appearance of the keyboard. Defaults to UIKeyboardAppearanceDefault. +@property (nonatomic) UIKeyboardAppearance keyboardAppearance; + +/// The color of the placeholder text. Defaults to light gray. +@property (nonatomic) UIColor *placeholderTextColor; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDS2Service.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDS2Service.h new file mode 100644 index 0000000000..c0baa55fef --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDS2Service.h @@ -0,0 +1,84 @@ +// +// STDSThreeDS2Service.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/22/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +@class STDSConfigParameters; +@class STDSTransaction; +@class STDSUICustomization; +@class STDSWarning; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSThreeDS2Service` is the main 3DS SDK interface and provides methods to process transactions. + */ +@interface STDSThreeDS2Service : NSObject + +/** + A list of warnings that may be populated once the SDK has been initialized. + */ +@property (nonatomic, readonly, nullable) NSArray *warnings; + +/** + Initializes the 3DS SDK instance. + + This method should be called at the start of the payment stage of a transaction. + **Note: Until the `STDSThreeDS2Service instance is initialized, it will be unusable.** + + - Performs security checks + - Collects device information + + @param config Configuration information that will be used during initialization. @see STDSConfigParameters + @param locale Optional override for the locale to use in UI. If `nil`, will default to the current system locale. + @param uiSettings Optional custom UI settings. If `nil`, will default to `[STDSUICustomization defaultSettings]`. + This argument is copied; any further changes to the customization object have no effect. @see STDSUICustomization + + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `config` is `nil` or any of `config`, `locale`, or `uiSettings` are invalid. @see STDSInvalidInputException + @exception STDSAlreadyInitializedException Will throw an `STDSAlreadyInitializedException` if the 3DS SDK instance has already been initialized. @see STDSSDKAlreadyInitializedException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (void)initializeWithConfig:(STDSConfigParameters *)config + locale:(nullable NSLocale *)locale + uiSettings:(nullable STDSUICustomization *)uiSettings; + +/** + Creates and returns an instance of `STDSTransaction`. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if `directoryServerID` is not recognized or if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + @exception STDSRuntimeException Will throw an `STDSRuntimeException` if there is an internal error in the SDK. @see STDSRuntimeException + */ +- (STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + withProtocolVersion:(nullable NSString *)protocolVersion; + +/** + Creates and returns an instance of `STDSTransaction` using a custom directory server certificate. + Will return nil if unable to create a certificate from the provided params. + + @param directoryServerID The Directory Server identifier returned in the authentication response + @param serverKeyID An additional authentication key used by some Directory Servers + @param certificateString A Base64-encoded PEM or DER formatted certificate string containing the directory server's public key + @param rootCertificateStrings An arry of base64-encoded PEM or DER formatted certificate strings containing the DS root certificate used for signature checks + @param protocolVersion 3DS protocol version according to which the transaction will be created. Uses the default value of 2.1.0 if nil + + @exception STDSNotInitializedException Will throw an `STDSNotInitializedException` if the the `STDSThreeDS2Service` instance hasn't been initialized with a call to `initializeWithConfig:locale:uiSettings:`. @see STDSNotInitializedException + @exception STDSInvalidInputException Will throw an `STDSInvalidInputException` if the `protocolVersion` is not supported by this version of the SDK. @see STDSInvalidInputException + */ +- (nullable STDSTransaction *)createTransactionForDirectoryServer:(NSString *)directoryServerID + serverKeyID:(nullable NSString *)serverKeyID + certificateString:(NSString *)certificateString + rootCertificateStrings:(NSArray *)rootCertificateStrings + withProtocolVersion:(nullable NSString *)protocolVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDSProtocolVersion.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDSProtocolVersion.h new file mode 100644 index 0000000000..b4161a6e3c --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSThreeDSProtocolVersion.h @@ -0,0 +1,15 @@ +// +// STDSThreeDSProtocolVersion.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 6/27/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +FOUNDATION_EXPORT NSString * const Stripe3DS2ProtocolVersion; + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTransaction.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTransaction.h new file mode 100644 index 0000000000..45d06e5142 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSTransaction.h @@ -0,0 +1,79 @@ +// +// STDSTransaction.h +// Stripe3DS2 +// +// Created by Yuki Tokuhiro on 3/21/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import + +typedef void (^STDSTransactionVoidBlock)(void); + +@class STDSAuthenticationRequestParameters, STDSChallengeParameters; +@protocol STDSChallengeStatusReceiver; + +NS_ASSUME_NONNULL_BEGIN + +/** + `STDSTransaction` holds parameters that the 3DS Server requires to create AReq messages and to perform the Challenge Flow. + */ +@interface STDSTransaction : NSObject + +/** + The UI type of the presented challenge for this transaction if applicable. Will be one of + "none" + "text" + "single_select" + "multi_select" + "oob" + "html" + */ +@property (nonatomic, readonly, copy) NSString *presentedChallengeUIType; + +/** + Encrypts device information collected during initialization and returns it along with SDK details. + + @return Encrypted device information and details about this SDK. @see STDSAuthenticationRequestParameters + + @exception SDKRuntimeException Thrown if an internal error is encountered. + */ +- (STDSAuthenticationRequestParameters *)createAuthenticationRequestParameters; + +/** + Returns a UIViewController instance displaying the Directory Server logo and a spinner. Present this during the Authentication Request/Response. + */ +- (UIViewController *)createProgressViewControllerWithDidCancel:(STDSTransactionVoidBlock)didCancel; + +/** + Initiates the challenge process, displaying challenge UI as needed. + + @param presentingViewController The UIViewController used to present the challenge response UIViewController + @param challengeParameters Details required to conduct the challenge process. @see STDSChallengeParameters + @param challengeStatusReceiver A callback object to receive the status of the challenge. See @STDSChallengeStatusReceiver + @param timeout An interval in seconds within which the challenge process will finish. Must be at least 5 minutes. + + @exception STDSInvalidInputException Thrown if an argument is invalid (e.g. timeout less than 5 minutes). @see STDSInvalidInputException + @exception STDSSDKRuntimeException Thrown if an internal error is encountered, and if you call this method after calling `close`. @see SDKRuntimeException + */ +- (void)doChallengeWithViewController:(UIViewController *)presentingViewController + challengeParameters:(STDSChallengeParameters *)challengeParameters + challengeStatusReceiver:(id)challengeStatusReceiver + timeout:(NSTimeInterval)timeout; + +/** + Returns the version of the Stripe3DS2 SDK, e.g. @"1.0" + */ +- (NSString *)sdkVersion; + +/** +Cleans up resources held by `STDSTransaction`. Call this when the transaction is completed, if `doChallengeWithChallengeParameters:challengeStatusReceiver:timeout` is not called. + + @note Don't use this object after calling this method. Calling `doChallengeWithViewController:challengeParameters:challengeStatusReceiver:timeout` after calling this method will throw an `STDSSDKRuntimeException` + */ +- (void)close; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSUICustomization.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSUICustomization.h new file mode 100644 index 0000000000..651b22f170 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSUICustomization.h @@ -0,0 +1,109 @@ +// +// STDSUICustomization.h +// Stripe3DS2 +// +// Created by Andrew Harrison on 3/14/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import +#import "STDSCustomization.h" +#import "STDSButtonCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSLabelCustomization.h" +#import "STDSTextFieldCustomization.h" +#import "STDSFooterCustomization.h" +#import "STDSSelectionCustomization.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSUICustomization` provides configuration for UI elements. + + It's important to configure this object appropriately before using it to initialize a + `STDSThreeDS2Service` object. `STDSThreeDS2Service` makes a copy of the customization + settings you provide; it ignores any subsequent changes you make to your `STDSUICustomization` instance. +*/ +@interface STDSUICustomization: NSObject + +/// The default settings. See individual properties for their default values. ++ (instancetype)defaultSettings; + +/** + Provides custom settings for the UINavigationBar of all UIViewControllers the SDK display. + The default is `[STDSNavigationBarCustomization defaultSettings]`. + */ +@property (nonatomic) STDSNavigationBarCustomization *navigationBarCustomization; + +/** + Provides custom settings for labels. + The default is `[STDSLabelCustomization defaultSettings]`. + */ +@property (nonatomic) STDSLabelCustomization *labelCustomization; + +/** + Provides custom settings for text fields. + The default is `[STDSTextFieldCustomization defaultSettings]`. + */ +@property (nonatomic) STDSTextFieldCustomization *textFieldCustomization; + +/** + The primary background color of all UIViewControllers the SDK display. + Defaults to white. + */ +@property (nonatomic) UIColor *backgroundColor; + +/** + The Challenge view displays a footer with additional details. This controls the background color of that view. + Defaults to gray. + */ +@property (nonatomic) STDSFooterCustomization *footerCustomization; + +/** + Sets a given button customization for the specified type. + + @param buttonCustomization The buttom customization to use. + @param buttonType The type of button to use the customization for. + */ +- (void)setButtonCustomization:(STDSButtonCustomization *)buttonCustomization forType:(STDSUICustomizationButtonType)buttonType; + +/** + Retrieves a button customization object for the given button type. + + @param buttonType The button type to retrieve a customization object for. + @return A button customization object, or the default if none was set. + @see STDSButtonCustomization + */ +- (STDSButtonCustomization *)buttonCustomizationForButtonType:(STDSUICustomizationButtonType)buttonType; + +/** + Provides custom settings for radio buttons and checkboxes. + The default is `[STDSSelectionCustomization defaultSettings]`. + */ +@property (nonatomic) STDSSelectionCustomization *selectionCustomization; + + +/** + The preferred status bar style for all UIViewControllers the SDK display. + Defaults to UIStatusBarStyleDefault. + */ +@property (nonatomic) UIStatusBarStyle preferredStatusBarStyle; + +#pragma mark - Progress View + +/** + The style of UIActivityIndicatorViews displayed. + This should contrast with `backgroundColor`. Defaults to regular on iOS 13+, + gray on iOS 10-12. + */ +@property (nonatomic) UIActivityIndicatorViewStyle activityIndicatorViewStyle; + +/** + The style of the UIBlurEffect displayed underneath the UIActivityIndicatorView. + Defaults to UIBlurEffectStyleDefault. + */ +@property (nonatomic) UIBlurEffectStyle blurStyle; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSWarning.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSWarning.h new file mode 100644 index 0000000000..5f09fe70a8 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/STDSWarning.h @@ -0,0 +1,69 @@ +// +// STDSWarning.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 2/12/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + The `STDSWarningSeverity` enum defines the severity levels of warnings generated + during SDK initialization. @see STDSThreeDS2Service + */ +typedef NS_ENUM(NSInteger, STDSWarningSeverity) { + /** + Low severity + */ + STDSWarningSeverityLow = 0, + + /** + Medium severity + */ + STDSWarningSeverityMedium, + + /** + High severity + */ + STDSWarningSeverityHigh, +}; + +/** + The `STDSWarning` class represents warnings generated by `STDSThreeDS2Service` during + security checks run during initialization. @see STDSThreeDS2Service + */ +@interface STDSWarning : NSObject + +/** + Designated initializer for `STDSWarning`. + */ +- (instancetype)initWithIdentifier:(NSString *)identifier + message:(NSString *)message + severity:(STDSWarningSeverity)severity NS_DESIGNATED_INITIALIZER; + +/** + `STDSWarning` should not be directly initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + The identifier for this warning instance. + */ +@property (nonatomic, readonly) NSString *identifier; + +/** + The descriptive message for this warning. + */ +@property (nonatomic, readonly) NSString *message; + +/** + The severity of this warning. + */ +@property (nonatomic, readonly) STDSWarningSeverity severity; + +@end + +NS_ASSUME_NONNULL_END diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2-Prefix.pch b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2-Prefix.pch new file mode 100644 index 0000000000..888096ff59 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2-Prefix.pch @@ -0,0 +1,14 @@ +// +// Stripe3DS2-Prefix.pch +// Stripe3DS2 +// +// Created by Cameron Sabol on 4/16/20. +// Copyright © 2020 Stripe. All rights reserved. +// + +#ifndef Stripe3DS2_pch +#define Stripe3DS2_pch + +#import "STDSLocalizedString.h" + +#endif /* Stripe3DS2_pch */ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2.h b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2.h new file mode 100644 index 0000000000..9e9f3eba40 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Headers/Stripe3DS2.h @@ -0,0 +1,52 @@ +// +// Stripe3DS2.h +// Stripe3DS2 +// +// Created by Cameron Sabol on 1/16/19. +// Copyright © 2019 Stripe. All rights reserved. +// + +#import + +//! Project version number for Stripe3DS2. +FOUNDATION_EXPORT double Stripe3DS2VersionNumber; + +//! Project version string for Stripe3DS2. +FOUNDATION_EXPORT const unsigned char Stripe3DS2VersionString[]; + +#import "STDSConfigParameters.h" +#import "STDSThreeDS2Service.h" +#import "STDSUICustomization.h" +#import "STDSWarning.h" + +#import "STDSAlreadyInitializedException.h" +#import "STDSInvalidInputException.h" +#import "STDSNotInitializedException.h" +#import "STDSRuntimeException.h" + +#import "STDSErrorMessage.h" +#import "STDSProtocolErrorEvent.h" +#import "STDSRuntimeErrorEvent.h" +#import "STDSStripe3DS2Error.h" +#import "STDSThreeDSProtocolVersion.h" + +#import "STDSAuthenticationRequestParameters.h" +#import "STDSAuthenticationResponse.h" +#import "STDSChallengeParameters.h" +#import "STDSChallengeStatusReceiver.h" +#import "STDSCompletionEvent.h" +#import "STDSJSONDecodable.h" +#import "STDSJSONEncoder.h" +#import "STDSTransaction.h" + +#import "STDSButtonCustomization.h" +#import "STDSCustomization.h" +#import "STDSException.h" +#import "STDSFooterCustomization.h" +#import "STDSJSONEncodable.h" +#import "STDSLabelCustomization.h" +#import "STDSNavigationBarCustomization.h" +#import "STDSSelectionCustomization.h" +#import "STDSTextFieldCustomization.h" + +#import "STDSSwiftTryCatch.h" diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Modules/module.modulemap b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Modules/module.modulemap new file mode 100644 index 0000000000..7770928524 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module Stripe3DS2 { + umbrella header "Stripe3DS2.h" + + export * + module * { export * } +} diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Assets.car b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Assets.car new file mode 100644 index 0000000000..f50135cecb Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Assets.car differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Info.plist b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000000..649425b669 --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,50 @@ + + + + + BuildMachineOSBuild + 19G2021 + CFBundleDevelopmentRegion + en + CFBundleExecutable + Stripe3DS2 + CFBundleIdentifier + com.stripe.stripe-3ds2 + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + Stripe3DS2 + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSupportedPlatforms + + MacOSX + + CFBundleVersion + 1.0 + DTCompiler + com.apple.compilers.llvm.clang.1_0 + DTPlatformBuild + 12A7209 + DTPlatformName + macosx + DTPlatformVersion + 10.15.6 + DTSDKBuild + 19G68 + DTSDKName + macosx10.15 + DTXcode + 1200 + DTXcodeBuild + 12A7209 + LSMinimumSystemVersion + 10.15 + UIDeviceFamily + + 2 + + + diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/amex.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/amex.der new file mode 100644 index 0000000000..61a1cfd1f0 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/amex.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/da.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/da.lproj/Localizable.strings new file mode 100644 index 0000000000..4bf8d75e7a Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/da.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/de.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/de.lproj/Localizable.strings new file mode 100644 index 0000000000..c223442ccd Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/de.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/discover.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/discover.der new file mode 100644 index 0000000000..5b17935a35 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/discover.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ec_test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ec_test.der new file mode 100644 index 0000000000..06587c44c3 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ec_test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en-GB.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en-GB.lproj/Localizable.strings new file mode 100644 index 0000000000..09359c5b36 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en-GB.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en.lproj/Localizable.strings new file mode 100644 index 0000000000..964c7be1f9 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/en.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es-419.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es-419.lproj/Localizable.strings new file mode 100644 index 0000000000..4f932544a8 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es-419.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es.lproj/Localizable.strings new file mode 100644 index 0000000000..05be1afab1 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/es.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fi.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fi.lproj/Localizable.strings new file mode 100644 index 0000000000..91182f0635 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fi.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr-CA.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr-CA.lproj/Localizable.strings new file mode 100644 index 0000000000..df6a03b8f4 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr-CA.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr.lproj/Localizable.strings new file mode 100644 index 0000000000..1053972dc5 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/fr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/hu.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/hu.lproj/Localizable.strings new file mode 100644 index 0000000000..d34a34a177 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/hu.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/it.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/it.lproj/Localizable.strings new file mode 100644 index 0000000000..6125a9411a Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/it.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ja.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ja.lproj/Localizable.strings new file mode 100644 index 0000000000..b16e0fae7c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ja.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ko.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ko.lproj/Localizable.strings new file mode 100644 index 0000000000..d2e9e3f5a0 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ko.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mastercard.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mastercard.der new file mode 100644 index 0000000000..6e136e1331 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mastercard.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mt.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mt.lproj/Localizable.strings new file mode 100644 index 0000000000..41fbe6994e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/mt.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nb.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nb.lproj/Localizable.strings new file mode 100644 index 0000000000..631f9b9da9 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nb.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nl.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nl.lproj/Localizable.strings new file mode 100644 index 0000000000..28a58aa119 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nl.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nn-NO.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nn-NO.lproj/Localizable.strings new file mode 100644 index 0000000000..e77191ee7d Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/nn-NO.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-BR.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-BR.lproj/Localizable.strings new file mode 100644 index 0000000000..28dcc28e9e Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-BR.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-PT.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-PT.lproj/Localizable.strings new file mode 100644 index 0000000000..81cbbc2764 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/pt-PT.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ru.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ru.lproj/Localizable.strings new file mode 100644 index 0000000000..a67877946b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ru.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/sv.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/sv.lproj/Localizable.strings new file mode 100644 index 0000000000..6ed9cd828f Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/sv.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/tr.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/tr.lproj/Localizable.strings new file mode 100644 index 0000000000..df588e2cfd Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/tr.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ul-test.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ul-test.der new file mode 100644 index 0000000000..11e5f29b3b Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/ul-test.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/visa.der b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/visa.der new file mode 100644 index 0000000000..a77735dfa6 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/visa.der differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-HK.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-HK.lproj/Localizable.strings new file mode 100644 index 0000000000..fb5f6fd2c1 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-HK.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hans.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hans.lproj/Localizable.strings new file mode 100644 index 0000000000..4229174d23 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hans.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hant.lproj/Localizable.strings b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hant.lproj/Localizable.strings new file mode 100644 index 0000000000..15cb60cf8c Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Resources/zh-Hant.lproj/Localizable.strings differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Stripe3DS2 b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Stripe3DS2 new file mode 100755 index 0000000000..749d2b4b80 Binary files /dev/null and b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/A/Stripe3DS2 differ diff --git a/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/Current b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/Current new file mode 120000 index 0000000000..8c7e5a667f --- /dev/null +++ b/InternalFrameworks/dynamic/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/Stripe3DS2.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/InternalFrameworks/Stripe3DS2.xcframework/Info.plist b/InternalFrameworks/static/Stripe3DS2.xcframework/Info.plist similarity index 86% rename from InternalFrameworks/Stripe3DS2.xcframework/Info.plist rename to InternalFrameworks/static/Stripe3DS2.xcframework/Info.plist index 343a9bd9ff..ef8738039f 100644 --- a/InternalFrameworks/Stripe3DS2.xcframework/Info.plist +++ b/InternalFrameworks/static/Stripe3DS2.xcframework/Info.plist @@ -6,9 +6,9 @@ LibraryIdentifier - ios-x86_64-simulator + ios-x86_64-maccatalyst LibraryPath - libStripe3DS2-static-sim.a + libStripe3DS2.a SupportedArchitectures x86_64 @@ -16,13 +16,28 @@ SupportedPlatform ios SupportedPlatformVariant + maccatalyst + + + LibraryIdentifier + ios-arm64_x86_64-simulator + LibraryPath + libStripe3DS2.a + SupportedArchitectures + + arm64 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant simulator LibraryIdentifier ios-arm64 LibraryPath - libStripe3DS2-static-ios.a + libStripe3DS2.a SupportedArchitectures arm64 @@ -30,20 +45,6 @@ SupportedPlatform ios - - LibraryIdentifier - ios-x86_64-maccatalyst - LibraryPath - libStripe3DS2-static-catalyst.a - SupportedArchitectures - - x86_64 - - SupportedPlatform - ios - SupportedPlatformVariant - maccatalyst - CFBundlePackageType XFWK diff --git a/InternalFrameworks/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2-static-ios.a b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2.a similarity index 61% rename from InternalFrameworks/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2-static-ios.a rename to InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2.a index 21f8eedccb..ed8d2f908c 100644 Binary files a/InternalFrameworks/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2-static-ios.a and b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64/libStripe3DS2.a differ diff --git a/InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/libStripe3DS2.a b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/libStripe3DS2.a new file mode 100644 index 0000000000..98fe59de4b Binary files /dev/null and b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-arm64_x86_64-simulator/libStripe3DS2.a differ diff --git a/InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2-static-catalyst.a b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2.a similarity index 54% rename from InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2-static-catalyst.a rename to InternalFrameworks/static/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2.a index 7f472710ac..7163647ba0 100644 Binary files a/InternalFrameworks/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2-static-catalyst.a and b/InternalFrameworks/static/Stripe3DS2.xcframework/ios-x86_64-maccatalyst/libStripe3DS2.a differ diff --git a/Package.swift b/Package.swift index e8091115fc..f773d19279 100644 --- a/Package.swift +++ b/Package.swift @@ -10,7 +10,6 @@ let package = Package( products: [ .library( name: "Stripe", - type: .dynamic, targets: ["Stripe"] ), ], @@ -24,7 +23,6 @@ let package = Package( .process("Info.plist"), .process("Resources/Images"), .process("Resources/au_becs_bsb.json"), - .process("ExternalResources/Stripe3DS2.bundle"), ], publicHeadersPath: "PublicHeaders", cSettings: [ @@ -34,7 +32,7 @@ let package = Package( ), .binaryTarget( name: "Stripe3DS2", - url: "https://github.com/stripe-ios/stripe-3ds2-ios-releases/releases/download/v19.9.9/Stripe3DS2.xcframework.zip", - checksum: "2efb524df2480cb9d23dafe4b5e9cb0f91440e7d5d8b94fc1ea4c0a6c969f579"), + path: "InternalFrameworks/dynamic/Stripe3DS2.xcframework" + ), ] ) diff --git a/Stripe.xcodeproj/project.pbxproj b/Stripe.xcodeproj/project.pbxproj index 4e5523ab64..880614379f 100644 --- a/Stripe.xcodeproj/project.pbxproj +++ b/Stripe.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 52; objects = { /* Begin PBXBuildFile section */ @@ -179,14 +179,12 @@ 31237F2224F7116D00B22785 /* STPIntentActionAlipayHandleRedirect.h in Headers */ = {isa = PBXBuildFile; fileRef = 31237F2124F7116D00B22785 /* STPIntentActionAlipayHandleRedirect.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31237F2524F7118B00B22785 /* STPIntentAction.h in Headers */ = {isa = PBXBuildFile; fileRef = 31237F2424F7118B00B22785 /* STPIntentAction.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31237F2824F71BA000B22785 /* Stripe3DS2.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 31237F2724F71BA000B22785 /* Stripe3DS2.bundle */; }; - 31237F2E24F7386300B22785 /* libStripe3DS2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 315CB85222E7BD0D00E612A3 /* libStripe3DS2.a */; }; 314B6A532384A713001FE708 /* STPKlarnaLineItem.h in Headers */ = {isa = PBXBuildFile; fileRef = 314B6A512384A713001FE708 /* STPKlarnaLineItem.h */; settings = {ATTRIBUTES = (Public, ); }; }; 314B6A552384A713001FE708 /* STPKlarnaLineItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 314B6A522384A713001FE708 /* STPKlarnaLineItem.m */; }; 314B6A592384ABF9001FE708 /* STPSourceKlarnaDetails.h in Headers */ = {isa = PBXBuildFile; fileRef = 314B6A572384ABF9001FE708 /* STPSourceKlarnaDetails.h */; settings = {ATTRIBUTES = (Public, ); }; }; 314B6A5B2384ABF9001FE708 /* STPSourceKlarnaDetails.m in Sources */ = {isa = PBXBuildFile; fileRef = 314B6A582384ABF9001FE708 /* STPSourceKlarnaDetails.m */; }; 314F9CC0235E66920059E2F6 /* STPFPXBankStatusResponse.h in Headers */ = {isa = PBXBuildFile; fileRef = 314F9CBE235E66920059E2F6 /* STPFPXBankStatusResponse.h */; }; 314F9CC2235E66920059E2F6 /* STPFPXBankStatusResponse.m in Sources */ = {isa = PBXBuildFile; fileRef = 314F9CBF235E66920059E2F6 /* STPFPXBankStatusResponse.m */; }; - 315CB86222E7D13600E612A3 /* libStripe3DS2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 315CB85222E7BD0D00E612A3 /* libStripe3DS2.a */; }; 315CB8C222E7D96000E612A3 /* STDSChallengeStatusReceiver.h in Headers */ = {isa = PBXBuildFile; fileRef = 315CB8A322E7D95E00E612A3 /* STDSChallengeStatusReceiver.h */; settings = {ATTRIBUTES = (Public, ); }; }; 315CB8C322E7D96000E612A3 /* STDSRuntimeException.h in Headers */ = {isa = PBXBuildFile; fileRef = 315CB8A422E7D95E00E612A3 /* STDSRuntimeException.h */; settings = {ATTRIBUTES = (Public, ); }; }; 315CB8C422E7D96000E612A3 /* STDSButtonCustomization.h in Headers */ = {isa = PBXBuildFile; fileRef = 315CB8A522E7D95E00E612A3 /* STDSButtonCustomization.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -232,6 +230,8 @@ 31C8645024DDF2D90015F7DF /* STPPaymentMethodSofortParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 31C8644324DDEF070015F7DF /* STPPaymentMethodSofortParams.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31CF06DF2508486F002FED4B /* Stripe.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 31CF06DE2508486F002FED4B /* Stripe.xcassets */; }; 31CF06E1250863A9002FED4B /* au_becs_bsb.json in Resources */ = {isa = PBXBuildFile; fileRef = 363E25BA24183B6900070D59 /* au_becs_bsb.json */; }; + 31F336DD25376C5700874F00 /* Stripe3DS2.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 31F336DC25376C5700874F00 /* Stripe3DS2.xcframework */; }; + 31F336E025377C9700874F00 /* STDSSwiftTryCatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 31F336DF25377C9700874F00 /* STDSSwiftTryCatch.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31F5A50922F0EFB10033663B /* STPPaymentMethodFPXParams.h in Headers */ = {isa = PBXBuildFile; fileRef = 31F5A50722F0EFB00033663B /* STPPaymentMethodFPXParams.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31F5A50B22F0EFB10033663B /* STPPaymentMethodFPX.h in Headers */ = {isa = PBXBuildFile; fileRef = 31F5A50822F0EFB00033663B /* STPPaymentMethodFPX.h */; settings = {ATTRIBUTES = (Public, ); }; }; 31F5A50F22F0EFDC0033663B /* STPPaymentMethodFPX.m in Sources */ = {isa = PBXBuildFile; fileRef = 31F5A50D22F0EFDB0033663B /* STPPaymentMethodFPX.m */; }; @@ -977,7 +977,6 @@ 314B6A582384ABF9001FE708 /* STPSourceKlarnaDetails.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = STPSourceKlarnaDetails.m; sourceTree = ""; }; 314F9CBE235E66920059E2F6 /* STPFPXBankStatusResponse.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = STPFPXBankStatusResponse.h; sourceTree = ""; }; 314F9CBF235E66920059E2F6 /* STPFPXBankStatusResponse.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = STPFPXBankStatusResponse.m; sourceTree = ""; }; - 315CB85222E7BD0D00E612A3 /* libStripe3DS2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libStripe3DS2.a; path = InternalFrameworks/libStripe3DS2.a; sourceTree = ""; }; 315CB8A322E7D95E00E612A3 /* STDSChallengeStatusReceiver.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = STDSChallengeStatusReceiver.h; path = Stripe/STDSChallengeStatusReceiver.h; sourceTree = ""; }; 315CB8A422E7D95E00E612A3 /* STDSRuntimeException.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = STDSRuntimeException.h; path = Stripe/STDSRuntimeException.h; sourceTree = ""; }; 315CB8A522E7D95E00E612A3 /* STDSButtonCustomization.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = STDSButtonCustomization.h; path = Stripe/STDSButtonCustomization.h; sourceTree = ""; }; @@ -1022,6 +1021,8 @@ 31C8644724DDF2550015F7DF /* STPPaymentMethodSofortTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = STPPaymentMethodSofortTests.m; sourceTree = ""; }; 31C8644824DDF2550015F7DF /* STPPaymentMethodSofortParamsTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = STPPaymentMethodSofortParamsTests.m; sourceTree = ""; }; 31CF06DE2508486F002FED4B /* Stripe.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Stripe.xcassets; sourceTree = ""; }; + 31F336DC25376C5700874F00 /* Stripe3DS2.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Stripe3DS2.xcframework; path = InternalFrameworks/static/Stripe3DS2.xcframework; sourceTree = ""; }; + 31F336DF25377C9700874F00 /* STDSSwiftTryCatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = STDSSwiftTryCatch.h; path = Stripe/STDSSwiftTryCatch.h; sourceTree = ""; }; 31F5A50722F0EFB00033663B /* STPPaymentMethodFPXParams.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = STPPaymentMethodFPXParams.h; path = PublicHeaders/Stripe/STPPaymentMethodFPXParams.h; sourceTree = ""; }; 31F5A50822F0EFB00033663B /* STPPaymentMethodFPX.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = STPPaymentMethodFPX.h; path = PublicHeaders/Stripe/STPPaymentMethodFPX.h; sourceTree = ""; }; 31F5A50D22F0EFDB0033663B /* STPPaymentMethodFPX.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = STPPaymentMethodFPX.m; sourceTree = ""; }; @@ -1572,7 +1573,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 315CB86222E7D13600E612A3 /* libStripe3DS2.a in Frameworks */, 04E01F7B21A8C37D0061402F /* OHHTTPStubs.framework in Frameworks */, 04E01F7C21A8C37D0061402F /* SWHttpTrafficRecorder.framework in Frameworks */, 045E7C091A5F41DE004751EF /* Stripe.framework in Frameworks */, @@ -1587,11 +1587,11 @@ files = ( F15232311EA93E6800D65C67 /* Contacts.framework in Frameworks */, F1D765CE1EDE331500F37005 /* CoreLocation.framework in Frameworks */, - 31237F2E24F7386300B22785 /* libStripe3DS2.a in Frameworks */, F116E94C1D83405E0026A52A /* Foundation.framework in Frameworks */, 04533E7D1A6877F400C7E52E /* PassKit.framework in Frameworks */, F116E94D1D8340640026A52A /* Security.framework in Frameworks */, F1D64B2E1D87686E001CDB7C /* WebKit.framework in Frameworks */, + 31F336DD25376C5700874F00 /* Stripe3DS2.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1737,7 +1737,7 @@ 11C74B9A164043050071C2CA /* Frameworks */ = { isa = PBXGroup; children = ( - 315CB85222E7BD0D00E612A3 /* libStripe3DS2.a */, + 31F336DC25376C5700874F00 /* Stripe3DS2.xcframework */, 04E01F7921A8C37C0061402F /* OHHTTPStubs.framework */, 04E01F7A21A8C37D0061402F /* SWHttpTrafficRecorder.framework */, F1D765CD1EDE331500F37005 /* CoreLocation.framework */, @@ -1809,6 +1809,7 @@ 315CB8A422E7D95E00E612A3 /* STDSRuntimeException.h */, 315CB8A722E7D95E00E612A3 /* STDSSelectionCustomization.h */, 315CB8C122E7D96000E612A3 /* STDSStripe3DS2Error.h */, + 31F336DF25377C9700874F00 /* STDSSwiftTryCatch.h */, 315CB8A922E7D95F00E612A3 /* STDSTextFieldCustomization.h */, 315CB8B522E7D95F00E612A3 /* STDSThreeDS2Service.h */, 315CB8B322E7D95F00E612A3 /* STDSThreeDSProtocolVersion.h */, @@ -2959,6 +2960,7 @@ 36239BAE2295EA23004FB1A5 /* STP3DS2AuthenticateResponse.h in Headers */, B61D4B97245767D2001AEBEF /* STPPaymentIntentShippingDetailsAddress.h in Headers */, C158AB3F1E1EE98900348D01 /* STPSectionHeaderView.h in Headers */, + 31F336E025377C9700874F00 /* STDSSwiftTryCatch.h in Headers */, 04EBC7571B7533C300A0E6AE /* STPCardValidator.h in Headers */, 364B75DD24F46354007D9FAB /* STPCardLoadingIndicator.h in Headers */, 366658B0240F20AD00D00354 /* STPPaymentMethodAUBECSDebit.h in Headers */, diff --git a/Stripe/ExternalResources/Stripe3DS2.bundle/Assets.car b/Stripe/ExternalResources/Stripe3DS2.bundle/Assets.car index f2cb78239e..f0ecfbb065 100644 Binary files a/Stripe/ExternalResources/Stripe3DS2.bundle/Assets.car and b/Stripe/ExternalResources/Stripe3DS2.bundle/Assets.car differ diff --git a/Stripe/PublicHeaders/Stripe/STDSSwiftTryCatch.h b/Stripe/PublicHeaders/Stripe/STDSSwiftTryCatch.h new file mode 100644 index 0000000000..47443368a7 --- /dev/null +++ b/Stripe/PublicHeaders/Stripe/STDSSwiftTryCatch.h @@ -0,0 +1,50 @@ +// +// STDSSwiftTryCatch.h +// +// Created by William Falcon on 10/10/14. +// Copyright (c) 2014 William Falcon. All rights reserved. +// +/* + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ +@interface STDSSwiftTryCatch : NSObject + +/** + Provides try catch functionality for swift by wrapping around Objective-C + */ ++ (void)tryBlock:(void(^)(void))tryBlock catchBlock:(void(^)(NSException*exception))catchBlock finallyBlock:(void(^)(void))finallyBlock; +/** + Throws Objective-C exception with name and reason set to `s` + */ ++ (void)throwString:(NSString*)s; + +/** + Throws exception `e` + */ ++ (void)throwException:(NSException*)e; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Stripe/PublicHeaders/Stripe/Stripe3DS2.h b/Stripe/PublicHeaders/Stripe/Stripe3DS2.h index b604b9bb85..9e9f3eba40 100644 --- a/Stripe/PublicHeaders/Stripe/Stripe3DS2.h +++ b/Stripe/PublicHeaders/Stripe/Stripe3DS2.h @@ -48,3 +48,5 @@ FOUNDATION_EXPORT const unsigned char Stripe3DS2VersionString[]; #import "STDSNavigationBarCustomization.h" #import "STDSSelectionCustomization.h" #import "STDSTextFieldCustomization.h" + +#import "STDSSwiftTryCatch.h" diff --git a/ci_scripts/check_documentation.sh b/ci_scripts/check_documentation.sh index a5a81b29ec..dbadf0dbf2 100755 --- a/ci_scripts/check_documentation.sh +++ b/ci_scripts/check_documentation.sh @@ -40,7 +40,7 @@ jazzy \ --no-clean \ --output "${script_dir}/../docs/docs" \ --skip-documentation \ - --framework-root "${script_dir}/.." \ + --framework-root "${script_dir}/../Stripe" \ --umbrella-header "${script_dir}/../Stripe/PublicHeaders/Stripe/Stripe.h" \ --objc \ --sdk iphonesimulator \ diff --git a/ci_scripts/export_builds.sh b/ci_scripts/export_builds.sh index ff6c6c0d31..3fd15bafb5 100755 --- a/ci_scripts/export_builds.sh +++ b/ci_scripts/export_builds.sh @@ -21,11 +21,6 @@ if ! command -v xcpretty > /dev/null; then gem install xcpretty --no-document || die "Executing \`gem install xcpretty\` failed" fi -# Verify Xcode 13.0 or later is selected -if ! xcodebuild -version | grep -q 'Xcode 11' &> /dev/null; then - die "Please xcode-select a copy of Xcode 11." -fi - # Clean build directory build_dir="${root_dir}/build" @@ -85,22 +80,22 @@ fi # Once Xcode 12 is out, uncomment this section so we start building a Mac slice in our distributed .xcframework again. # Until then, our recommended strategy for Catalyst users will be Xcode 12 + Swift Package Manager. # -# xcodebuild clean archive \ -# -workspace "Stripe.xcworkspace" \ -# -scheme "StripeiOS" \ -# -configuration "Release" \ -# -archivePath "${build_dir}/Stripe-mac.xcarchive" \ -# -sdk macosx \ -# SYMROOT="${build_dir}/framework-mac" \ -# OBJROOT="${build_dir}/framework-mac" \ -# SUPPORTS_MACCATALYST=YES \ -# BUILD_LIBRARIES_FOR_DISTRIBUTION=YES \ -# SKIP_INSTALL=NO \ -# | xcpretty -# exit_code="${PIPESTATUS[0]}" -# if [[ "${exit_code}" != 0 ]]; then -# die "xcodebuild exited with non-zero status code: ${exit_code}" -# fi +xcodebuild clean archive \ + -workspace "Stripe.xcworkspace" \ + -scheme "StripeiOS" \ + -configuration "Release" \ + -archivePath "${build_dir}/Stripe-mac.xcarchive" \ + -sdk macosx \ + SYMROOT="${build_dir}/framework-mac" \ + OBJROOT="${build_dir}/framework-mac" \ + SUPPORTS_MACCATALYST=YES \ + BUILD_LIBRARIES_FOR_DISTRIBUTION=YES \ + SKIP_INSTALL=NO \ + | xcpretty +exit_code="${PIPESTATUS[0]}" +if [[ "${exit_code}" != 0 ]]; then + die "xcodebuild exited with non-zero status code: ${exit_code}" +fi set -ex codesign_identity=$(security find-identity -v -p codesigning | grep Y28TH9SHX7 | grep -o -E '\w{40}' | head -n 1) @@ -110,13 +105,17 @@ if [ -z "$codesign_identity" ]; then else codesign -f --deep -s "$codesign_identity" "${build_dir}/Stripe-iOS.xcarchive/Products/Library/Frameworks/Stripe.framework" codesign -f --deep -s "$codesign_identity" "${build_dir}/Stripe-sim.xcarchive/Products/Library/Frameworks/Stripe.framework" - + codesign -f --deep -s "$codesign_identity" "${build_dir}/Stripe-mac.xcarchive/Products/Library/Frameworks/Stripe.framework" +fi xcodebuild -create-xcframework \ -framework "${build_dir}/Stripe-iOS.xcarchive/Products/Library/Frameworks/Stripe.framework" \ -framework "${build_dir}/Stripe-sim.xcarchive/Products/Library/Frameworks/Stripe.framework" \ + -framework "${build_dir}/Stripe-mac.xcarchive/Products/Library/Frameworks/Stripe.framework" \ -output "${build_dir}/Stripe.xcframework" +if [ ! -z "$codesign_identity" ]; then codesign -f --deep -s "$codesign_identity" "${build_dir}/Stripe.xcframework" +fi ditto \ -ck \ @@ -125,7 +124,6 @@ else --keepParent \ "${build_dir}/Stripe.xcframework" \ "${build_dir}/Stripe.xcframework.zip" -fi carthage build \ --no-skip-current \ diff --git a/fastlane/Fastfile b/fastlane/Fastfile index e490441933..389fa46d05 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -45,9 +45,9 @@ platform :ios do end lane :linting_tests do - preflight - builds check_docs + builds + preflight end lane :install_tests do diff --git a/fastlane/README.md b/fastlane/README.md index ca6cc58fb6..19c279ab34 100644 --- a/fastlane/README.md +++ b/fastlane/README.md @@ -31,6 +31,16 @@ fastlane ios all_ci fastlane ios standard_tests ``` +### ios ui_and_analyze_tests +``` +fastlane ios ui_and_analyze_tests +``` + +### ios linting_tests +``` +fastlane ios linting_tests +``` + ### ios install_tests ``` fastlane ios install_tests @@ -41,9 +51,9 @@ fastlane ios install_tests fastlane ios preflight ``` -### ios lint +### ios lint_fauxpas ``` -fastlane ios lint +fastlane ios lint_fauxpas ``` ### ios old_tests @@ -51,16 +61,16 @@ fastlane ios lint fastlane ios old_tests ``` +### ios integration_tests +``` +fastlane ios integration_tests +``` + ### ios ui_tests ``` fastlane ios ui_tests ``` -### ios legacy_tests_10 -``` -fastlane ios legacy_tests_10 -``` - ### ios legacy_tests_11 ``` fastlane ios legacy_tests_11