@primer-io/react-native 2.16.7 → 2.17.0-rc.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/.project +2 -2
- package/android/build.gradle +2 -3
- package/android/gradle.properties +1 -1
- package/android/src/main/java/com/primerioreactnative/PrimerCardNumberEditTextManager.kt +0 -15
- package/android/src/main/java/com/primerioreactnative/PrimerRN.kt +15 -2
- package/android/src/main/java/com/primerioreactnative/PrimerRNEventListener.kt +23 -8
- package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckout.kt +20 -120
- package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckoutListener.kt +61 -69
- package/android/src/main/java/com/primerioreactnative/ReactNativePackage.kt +6 -2
- package/android/src/main/java/com/primerioreactnative/{huc → components}/assets/AssetsManager.kt +5 -14
- package/android/src/main/java/com/primerioreactnative/components/assets/CardNetworkImageFileProvider.kt +23 -0
- package/android/src/main/java/com/primerioreactnative/components/assets/PaymentMethodAssetFileProvider.kt +24 -0
- package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRNHeadlessUniversalCheckoutPaymentMethod.kt +25 -0
- package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRawPaymentMethodType.kt +9 -0
- package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/asset/PrimerRNAsset.kt +106 -0
- package/android/src/main/java/com/primerioreactnative/{huc/datamodels/manager/raw/card/PrimerRNRawCardData.kt → components/datamodels/manager/raw/card/PrimerRNCardData.kt} +6 -8
- package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/cardRedirect/PrimerRNCardRedirectData.kt +19 -0
- package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/phoneNumber/PrimerRNPhoneNumberData.kt +14 -0
- package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/retailOutlets/PrimerRNRetailOutletData.kt +12 -0
- package/android/src/main/java/com/primerioreactnative/{huc → components}/datamodels/manager/raw/retailOutlets/RNRetailOutletsList.kt +1 -1
- package/android/src/main/java/com/primerioreactnative/components/events/PrimerHeadlessUniversalCheckoutEvent.kt +17 -0
- package/android/src/main/java/com/primerioreactnative/{huc → components}/events/PrimerHeadlessUniversalCheckoutRawDataManagerEvent.kt +1 -2
- package/android/src/main/java/com/primerioreactnative/components/manager/asset/PrimerRNHeadlessUniversalCheckoutAssetManager.kt +131 -0
- package/android/src/main/java/com/primerioreactnative/components/manager/nativeUi/PrimerRNHeadlessUniversalCheckoutNativeUiManager.kt +87 -0
- package/android/src/main/java/com/primerioreactnative/{huc → components}/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManager.kt +72 -68
- package/android/src/main/java/com/primerioreactnative/{huc → components}/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManagerListener.kt +13 -5
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerErrorRN.kt +5 -4
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerInputValidationErrorRN.kt +11 -0
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerSettingsRN.kt +13 -9
- package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt +3 -3
- package/android/src/main/java/com/primerioreactnative/utils/PrimerHeadlessUniversalCheckoutImplementedRNCallbacks.kt +15 -15
- package/android/src/main/java/com/primerioreactnative/utils/PrimerImplementedRNCallbacks.kt +7 -7
- package/ios/Podfile.lock +1 -1
- package/ios/ReactNative.xcodeproj/project.pbxproj +20 -20
- package/ios/Sources/DataModels/ImplementedRNCallbacks.swift +75 -0
- package/ios/{DataModels/RNTPrimerCardRedirectData.swift → Sources/DataModels/PrimerBancontactCardRedirectData+Extension.swift} +5 -8
- package/ios/{DataModels/RNTPrimerCardData.swift → Sources/DataModels/PrimerCardData+Extension.swift} +2 -5
- package/ios/Sources/DataModels/PrimerHeadlessUniversalCheckout_PaymentMethod.swift +20 -0
- package/ios/{DataModels/RNTPrimerPhoneNumberData.swift → Sources/DataModels/PrimerPhoneNumberData+Extension.swift} +0 -1
- package/ios/{DataModels/RNTPrimerRetailerData.swift → Sources/DataModels/PrimerRawRetailerData+Extension.swift} +3 -4
- package/ios/Sources/DataModels/PrimerSettings+Extensions.swift +94 -0
- package/ios/Sources/DataModels/RNTNativeError.swift +22 -0
- package/ios/Sources/DataModels/RNTPrimerPaymentMethodAsset.swift +67 -0
- package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.m +19 -0
- package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.swift +63 -0
- package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.m +23 -0
- package/ios/{Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutRawDataManager.swift → Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.swift } +36 -31
- package/ios/Sources/Headless Universal Checkout/Managers/RNTAssetsManager.m +24 -0
- package/ios/Sources/Headless Universal Checkout/Managers/RNTAssetsManager.swift +107 -0
- package/ios/Sources/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.m +41 -0
- package/ios/Sources/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +498 -0
- package/ios/Sources/Helpers/Encodable+Extension.swift +17 -0
- package/ios/Sources/Helpers/Error+Extensions.swift +39 -0
- package/ios/Sources/Helpers/UIColor+Extensions.swift +32 -0
- package/ios/Sources/Helpers/UIImage+Extensions.swift +32 -0
- package/ios/Sources/RNTPrimer.m +86 -0
- package/ios/{RNTPrimer.swift → Sources/RNTPrimer.swift} +37 -28
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js +59 -0
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -0
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +35 -0
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -0
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +151 -0
- package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -0
- package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +270 -0
- package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -0
- package/lib/commonjs/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.js +7 -81
- package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -0
- package/lib/commonjs/HeadlessUniversalCheckout/types.js +34 -0
- package/lib/commonjs/HeadlessUniversalCheckout/types.js.map +1 -0
- package/lib/commonjs/Primer.js +24 -23
- package/lib/commonjs/Primer.js.map +1 -1
- package/lib/commonjs/PrimerInput.js.map +1 -1
- package/lib/commonjs/RNPrimer.js +4 -4
- package/lib/commonjs/RNPrimer.js.map +1 -1
- package/lib/commonjs/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +1 -1
- package/lib/commonjs/index.js +63 -71
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/PrimerAsset.js +2 -0
- package/lib/commonjs/models/PrimerAsset.js.map +1 -0
- package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js.map +1 -1
- package/lib/commonjs/models/PrimerCheckoutData.js.map +1 -1
- package/lib/commonjs/models/PrimerCheckoutPaymentMethodData.js.map +1 -1
- package/lib/commonjs/models/PrimerClientSession.js.map +1 -1
- package/lib/commonjs/models/PrimerCountryCode.js.map +1 -1
- package/lib/commonjs/models/PrimerCurrencyCode.js.map +1 -1
- package/lib/commonjs/models/PrimerError.js +4 -4
- package/lib/commonjs/models/PrimerError.js.map +1 -1
- package/lib/commonjs/models/PrimerHandlers.js +2 -0
- package/lib/commonjs/models/PrimerHandlers.js.map +1 -0
- package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +2 -0
- package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +1 -0
- package/lib/commonjs/models/PrimerImplementedRNCallbacks.js +2 -0
- package/lib/commonjs/models/PrimerImplementedRNCallbacks.js.map +1 -0
- package/lib/commonjs/models/PrimerInitializationData.js.map +1 -1
- package/lib/commonjs/models/PrimerInputElementType.js +20 -0
- package/lib/commonjs/models/PrimerInputElementType.js.map +1 -0
- package/lib/commonjs/models/PrimerInterfaces.js.map +1 -1
- package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js +14 -0
- package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js.map +1 -0
- package/lib/commonjs/models/PrimerPaymentMethodTokenData.js.map +1 -1
- package/lib/commonjs/models/PrimerRawData.js.map +1 -1
- package/lib/commonjs/models/PrimerSessionIntent.js.map +1 -1
- package/lib/commonjs/models/PrimerSettings.js.map +1 -1
- package/lib/commonjs/models/PrimerTheme.js.map +1 -1
- package/lib/commonjs/models/RetailOutletsRetail.js.map +1 -1
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js +52 -0
- package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -0
- package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +28 -0
- package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -0
- package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +144 -0
- package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -0
- package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +261 -0
- package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -0
- package/lib/module/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.js +7 -81
- package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -0
- package/lib/module/HeadlessUniversalCheckout/types.js +33 -0
- package/lib/module/HeadlessUniversalCheckout/types.js.map +1 -0
- package/lib/module/Primer.js +24 -23
- package/lib/module/Primer.js.map +1 -1
- package/lib/module/PrimerInput.js.map +1 -1
- package/lib/module/RNPrimer.js +4 -4
- package/lib/module/RNPrimer.js.map +1 -1
- package/lib/module/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +1 -1
- package/lib/module/index.js +15 -9
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/PrimerAsset.js +2 -0
- package/lib/module/models/PrimerAsset.js.map +1 -0
- package/lib/module/models/PrimerCheckoutAdditionalInfo.js.map +1 -1
- package/lib/module/models/PrimerCheckoutData.js.map +1 -1
- package/lib/module/models/PrimerCheckoutPaymentMethodData.js.map +1 -1
- package/lib/module/models/PrimerClientSession.js.map +1 -1
- package/lib/module/models/PrimerCountryCode.js.map +1 -1
- package/lib/module/models/PrimerCurrencyCode.js.map +1 -1
- package/lib/module/models/PrimerError.js +4 -4
- package/lib/module/models/PrimerError.js.map +1 -1
- package/lib/module/models/PrimerHandlers.js +2 -0
- package/lib/module/models/PrimerHandlers.js.map +1 -0
- package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +2 -0
- package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +1 -0
- package/lib/module/models/PrimerImplementedRNCallbacks.js +2 -0
- package/lib/module/models/PrimerImplementedRNCallbacks.js.map +1 -0
- package/lib/module/models/PrimerInitializationData.js.map +1 -1
- package/lib/module/models/PrimerInputElementType.js +13 -0
- package/lib/module/models/PrimerInputElementType.js.map +1 -0
- package/lib/module/models/PrimerInterfaces.js.map +1 -1
- package/lib/module/models/PrimerPaymentMethodManagerCategory.js +7 -0
- package/lib/module/models/PrimerPaymentMethodManagerCategory.js.map +1 -0
- package/lib/module/models/PrimerPaymentMethodTokenData.js.map +1 -1
- package/lib/module/models/PrimerRawData.js.map +1 -1
- package/lib/module/models/PrimerSessionIntent.js.map +1 -1
- package/lib/module/models/PrimerSettings.js.map +1 -1
- package/lib/module/models/PrimerTheme.js.map +1 -1
- package/lib/module/models/RetailOutletsRetail.js.map +1 -1
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts +9 -0
- package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +1 -0
- package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts +8 -0
- package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +1 -0
- package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts +29 -0
- package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +1 -0
- package/lib/typescript/{headless_checkout → HeadlessUniversalCheckout}/PrimerHeadlessUniversalCheckout.d.ts +4 -5
- package/lib/typescript/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +1 -0
- package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts +18 -0
- package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +1 -0
- package/lib/typescript/HeadlessUniversalCheckout/types.d.ts +1 -0
- package/lib/typescript/HeadlessUniversalCheckout/types.d.ts.map +1 -0
- package/lib/typescript/Primer.d.ts +1 -0
- package/lib/typescript/Primer.d.ts.map +1 -0
- package/lib/typescript/PrimerInput.d.ts +5 -4
- package/lib/typescript/PrimerInput.d.ts.map +1 -0
- package/lib/typescript/RNPrimer.d.ts +4 -4
- package/lib/typescript/RNPrimer.d.ts.map +1 -0
- package/lib/typescript/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts +1 -0
- package/lib/typescript/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +18 -9
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/models/PrimerAsset.d.ts +15 -0
- package/lib/typescript/models/PrimerAsset.d.ts.map +1 -0
- package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts +7 -6
- package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts.map +1 -0
- package/lib/typescript/models/PrimerCheckoutData.d.ts +3 -2
- package/lib/typescript/models/PrimerCheckoutData.d.ts.map +1 -0
- package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts +2 -1
- package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts.map +1 -0
- package/lib/typescript/models/PrimerClientSession.d.ts +6 -5
- package/lib/typescript/models/PrimerClientSession.d.ts.map +1 -0
- package/lib/typescript/models/PrimerCountryCode.d.ts +2 -1
- package/lib/typescript/models/PrimerCountryCode.d.ts.map +1 -0
- package/lib/typescript/models/PrimerCurrencyCode.d.ts +2 -1
- package/lib/typescript/models/PrimerCurrencyCode.d.ts.map +1 -0
- package/lib/typescript/models/PrimerError.d.ts +3 -1
- package/lib/typescript/models/PrimerError.d.ts.map +1 -0
- package/lib/typescript/models/PrimerHandlers.d.ts +22 -0
- package/lib/typescript/models/PrimerHandlers.d.ts.map +1 -0
- package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts +6 -0
- package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +1 -0
- package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts +17 -0
- package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts.map +1 -0
- package/lib/typescript/models/PrimerInitializationData.d.ts +3 -2
- package/lib/typescript/models/PrimerInitializationData.d.ts.map +1 -0
- package/lib/typescript/models/PrimerInputElementType.d.ts +12 -0
- package/lib/typescript/models/PrimerInputElementType.d.ts.map +1 -0
- package/lib/typescript/models/PrimerInterfaces.d.ts +3 -20
- package/lib/typescript/models/PrimerInterfaces.d.ts.map +1 -0
- package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts +6 -0
- package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts.map +1 -0
- package/lib/typescript/models/PrimerPaymentMethodTokenData.d.ts +2 -1
- package/lib/typescript/models/PrimerPaymentMethodTokenData.d.ts.map +1 -0
- package/lib/typescript/models/PrimerRawData.d.ts +7 -10
- package/lib/typescript/models/PrimerRawData.d.ts.map +1 -0
- package/lib/typescript/models/PrimerSessionIntent.d.ts +1 -0
- package/lib/typescript/models/PrimerSessionIntent.d.ts.map +1 -0
- package/lib/typescript/models/PrimerSettings.d.ts +28 -6
- package/lib/typescript/models/PrimerSettings.d.ts.map +1 -0
- package/lib/typescript/models/PrimerTheme.d.ts +3 -2
- package/lib/typescript/models/PrimerTheme.d.ts.map +1 -0
- package/lib/typescript/models/RetailOutletsRetail.d.ts +2 -1
- package/lib/typescript/models/RetailOutletsRetail.d.ts.map +1 -0
- package/lib/typescript/utils/index.d.ts +1 -0
- package/lib/typescript/utils/index.d.ts.map +1 -0
- package/package.json +8 -7
- package/primer-io-react-native.podspec +1 -2
- package/src/HeadlessUniversalCheckout/Managers/AssetsManager.ts +56 -0
- package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.ts +31 -0
- package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.ts +166 -0
- package/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.ts +333 -0
- package/src/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.ts +37 -128
- package/src/HeadlessUniversalCheckout/types.ts +32 -0
- package/src/Primer.ts +32 -31
- package/src/RNPrimer.ts +4 -9
- package/src/index.tsx +43 -29
- package/src/models/PrimerAsset.ts +14 -0
- package/src/models/PrimerError.ts +3 -1
- package/src/models/PrimerHandlers.ts +25 -0
- package/src/models/PrimerHeadlessUniversalCheckoutPaymentMethod.ts +5 -0
- package/src/models/PrimerImplementedRNCallbacks.ts +20 -0
- package/src/models/PrimerInputElementType.ts +11 -0
- package/src/models/PrimerInterfaces.ts +2 -28
- package/src/models/PrimerPaymentMethodManagerCategory.ts +5 -0
- package/src/models/PrimerRawData.ts +6 -10
- package/src/models/PrimerSettings.ts +42 -16
- package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/cardRedirect/PrimerRNPRawCardRedirectData.kt +0 -20
- package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/phoneNumber/PrimerRNRawPhoneNumberData.kt +0 -14
- package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/retailOutlets/PrimerRNRawRetailOutletData.kt +0 -12
- package/android/src/main/java/com/primerioreactnative/huc/events/PrimerHeadlessUniversalCheckoutEvent.kt +0 -15
- package/ios/DataModels/ImplementedRNCallbacks.swift +0 -62
- package/ios/DataModels/PrimerErrorRN.swift +0 -35
- package/ios/DataModels/PrimerSettingsRN.swift +0 -84
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.m +0 -62
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +0 -501
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.m +0 -14
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.swift +0 -117
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutRawDataManager.m +0 -23
- package/ios/RNTPrimer.m +0 -59
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js +0 -288
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +0 -1
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js +0 -91
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
- package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +0 -1
- package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js +0 -91
- package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
- package/lib/commonjs/headless_checkout/types.js +0 -6
- package/lib/commonjs/headless_checkout/types.js.map +0 -1
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js +0 -279
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +0 -1
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js +0 -83
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
- package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +0 -1
- package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js +0 -84
- package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
- package/lib/module/headless_checkout/types.js +0 -2
- package/lib/module/headless_checkout/types.js.map +0 -1
- package/lib/typescript/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.d.ts +0 -18
- package/lib/typescript/headless_checkout/RNPrimerHeadlessUniversalCheckout.d.ts +0 -22
- package/lib/typescript/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.d.ts +0 -14
- package/lib/typescript/headless_checkout/types.d.ts +0 -22
- package/src/headless_checkout/PrimerHeadlessUniversalCheckout.ts +0 -358
- package/src/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.ts +0 -109
- package/src/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.ts +0 -104
- package/src/headless_checkout/types.ts +0 -32
- /package/ios/{DataModels → Sources/DataModels}/PrimerThemeRN.swift +0 -0
- /package/ios/{Headless Universal Checkout → Sources/Headless Universal Checkout/Managers/Payment Method Managers}/RNTPrimerCardNumberInputElementManager.m +0 -0
|
@@ -1,19 +1,22 @@
|
|
|
1
|
-
package com.primerioreactnative.
|
|
1
|
+
package com.primerioreactnative.components.manager.raw
|
|
2
2
|
|
|
3
3
|
import com.facebook.react.bridge.*
|
|
4
4
|
import com.facebook.react.modules.core.DeviceEventManagerModule
|
|
5
5
|
import com.primerioreactnative.Keys
|
|
6
|
+
import com.primerioreactnative.components.datamodels.core.PrimerRawPaymentMethodType
|
|
7
|
+
import com.primerioreactnative.components.datamodels.manager.raw.card.PrimerRNCardData
|
|
8
|
+
import com.primerioreactnative.components.datamodels.manager.raw.cardRedirect.PrimerRNBancontactCardData
|
|
9
|
+
import com.primerioreactnative.components.datamodels.manager.raw.phoneNumber.PrimerRNPhoneNumberData
|
|
10
|
+
import com.primerioreactnative.components.datamodels.manager.raw.retailOutlets.PrimerRNRetailOutletData
|
|
11
|
+
import com.primerioreactnative.components.datamodels.manager.raw.retailOutlets.toRNRetailOutletsList
|
|
12
|
+
import com.primerioreactnative.components.events.PrimerHeadlessUniversalCheckoutEvent
|
|
6
13
|
import com.primerioreactnative.datamodels.ErrorTypeRN
|
|
7
14
|
import com.primerioreactnative.datamodels.PrimerErrorRN
|
|
8
|
-
import com.primerioreactnative.huc.datamodels.manager.raw.card.PrimerRNRawCardData
|
|
9
|
-
import com.primerioreactnative.huc.datamodels.manager.raw.cardRedirect.PrimerRNRawBancontactCardData
|
|
10
|
-
import com.primerioreactnative.huc.datamodels.manager.raw.phoneNumber.PrimerRNRawPhoneNumberData
|
|
11
|
-
import com.primerioreactnative.huc.datamodels.manager.raw.retailOutlets.PrimerRNRawRetailOutletData
|
|
12
|
-
import com.primerioreactnative.huc.datamodels.manager.raw.retailOutlets.toRNRetailOutletsList
|
|
13
|
-
import com.primerioreactnative.huc.events.PrimerHeadlessUniversalCheckoutEvent
|
|
14
15
|
import com.primerioreactnative.utils.convertJsonToMap
|
|
15
16
|
import com.primerioreactnative.utils.errorTo
|
|
16
17
|
import io.primer.android.ExperimentalPrimerApi
|
|
18
|
+
import io.primer.android.components.SdkUninitializedException
|
|
19
|
+
import io.primer.android.components.domain.exception.UnsupportedPaymentMethodManagerException
|
|
17
20
|
import io.primer.android.components.manager.raw.PrimerHeadlessUniversalCheckoutRawDataManager
|
|
18
21
|
import io.primer.android.components.manager.raw.PrimerHeadlessUniversalCheckoutRawDataManagerInterface
|
|
19
22
|
import io.primer.android.data.payments.configure.retailOutlets.RetailOutletsList
|
|
@@ -23,6 +26,7 @@ import kotlinx.serialization.json.Json
|
|
|
23
26
|
import org.json.JSONArray
|
|
24
27
|
import org.json.JSONObject
|
|
25
28
|
|
|
29
|
+
|
|
26
30
|
@ExperimentalPrimerApi
|
|
27
31
|
internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
28
32
|
reactContext: ReactApplicationContext,
|
|
@@ -37,34 +41,56 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
37
41
|
listener.sendEvent = { eventName, paramsJson -> sendEvent(eventName, paramsJson) }
|
|
38
42
|
}
|
|
39
43
|
|
|
40
|
-
override fun getName() = "
|
|
44
|
+
override fun getName() = "RNTPrimerHeadlessUniversalCheckoutRawDataManager"
|
|
41
45
|
|
|
42
46
|
@ReactMethod
|
|
43
|
-
fun
|
|
47
|
+
fun configure(paymentMethodTypeStr: String, promise: Promise) {
|
|
44
48
|
try {
|
|
45
49
|
rawManager = PrimerHeadlessUniversalCheckoutRawDataManager.newInstance(
|
|
46
50
|
paymentMethodTypeStr
|
|
47
51
|
)
|
|
48
52
|
this.paymentMethodTypeStr = paymentMethodTypeStr
|
|
49
|
-
rawManager.
|
|
50
|
-
|
|
53
|
+
rawManager.setListener(listener)
|
|
54
|
+
rawManager.configure { primerInitializationData, error ->
|
|
55
|
+
if (error == null) {
|
|
56
|
+
when (primerInitializationData) {
|
|
57
|
+
is RetailOutletsList -> {
|
|
58
|
+
promise.resolve(
|
|
59
|
+
prepareData(
|
|
60
|
+
JSONObject().apply {
|
|
61
|
+
put(
|
|
62
|
+
"initializationData", JSONObject(
|
|
63
|
+
Json.encodeToString(
|
|
64
|
+
primerInitializationData.toRNRetailOutletsList()
|
|
65
|
+
)
|
|
66
|
+
)
|
|
67
|
+
)
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
)
|
|
71
|
+
}
|
|
72
|
+
else -> promise.resolve(null)
|
|
73
|
+
}
|
|
74
|
+
} else promise.reject(error.errorId, error.description)
|
|
75
|
+
}
|
|
76
|
+
} catch (e: SdkUninitializedException) {
|
|
77
|
+
promise.reject(ErrorTypeRN.UnitializedSdkSession.errorId, e.message, e)
|
|
78
|
+
} catch (e: UnsupportedPaymentMethodManagerException) {
|
|
79
|
+
promise.reject(ErrorTypeRN.UnsupportedPaymentMethod.errorId, e.message, e)
|
|
51
80
|
} catch (e: Exception) {
|
|
52
81
|
val exception =
|
|
53
82
|
ErrorTypeRN.NativeBridgeFailed errorTo e.message.orEmpty()
|
|
54
|
-
promise.reject(exception.errorId, exception.description)
|
|
83
|
+
promise.reject(exception.errorId, exception.description, e)
|
|
55
84
|
}
|
|
56
85
|
}
|
|
57
86
|
|
|
58
87
|
@ReactMethod
|
|
59
|
-
fun
|
|
60
|
-
paymentMethodTypeStr: String,
|
|
88
|
+
fun listRequiredInputElementTypes(
|
|
61
89
|
promise: Promise
|
|
62
90
|
) {
|
|
63
91
|
if (::rawManager.isInitialized.not()) {
|
|
64
92
|
val exception =
|
|
65
|
-
ErrorTypeRN.NativeBridgeFailed errorTo
|
|
66
|
-
" has not been initialized. Make sure you have called the" +
|
|
67
|
-
" HeadlessUniversalCheckoutRawDataManager.configure function first."
|
|
93
|
+
ErrorTypeRN.NativeBridgeFailed errorTo UNINITIALIZED_ERROR
|
|
68
94
|
promise.reject(exception.errorId, exception.description)
|
|
69
95
|
} else {
|
|
70
96
|
promise.resolve(
|
|
@@ -84,33 +110,31 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
84
110
|
fun setRawData(rawDataStr: String, promise: Promise) {
|
|
85
111
|
if (::rawManager.isInitialized.not()) {
|
|
86
112
|
val exception =
|
|
87
|
-
ErrorTypeRN.NativeBridgeFailed errorTo
|
|
88
|
-
" has not been initialized. Make sure you have called the" +
|
|
89
|
-
" HeadlessUniversalCheckoutRawDataManager.configure function first."
|
|
113
|
+
ErrorTypeRN.NativeBridgeFailed errorTo UNINITIALIZED_ERROR
|
|
90
114
|
promise.reject(exception.errorId, exception.description)
|
|
91
115
|
} else {
|
|
92
116
|
try {
|
|
93
|
-
val rawData = when (paymentMethodTypeStr) {
|
|
94
|
-
|
|
117
|
+
val rawData = when (PrimerRawPaymentMethodType.valueOf(paymentMethodTypeStr.toString())) {
|
|
118
|
+
PrimerRawPaymentMethodType.PAYMENT_CARD -> json.decodeFromString<PrimerRNCardData>(
|
|
95
119
|
rawDataStr
|
|
96
120
|
).toPrimerCardData()
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
121
|
+
PrimerRawPaymentMethodType.XENDIT_OVO,
|
|
122
|
+
PrimerRawPaymentMethodType.ADYEN_MBWAY ->
|
|
123
|
+
json.decodeFromString<PrimerRNPhoneNumberData>(rawDataStr)
|
|
124
|
+
.toPrimerPhoneNumberData()
|
|
125
|
+
PrimerRawPaymentMethodType.ADYEN_BANCONTACT_CARD ->
|
|
126
|
+
json.decodeFromString<PrimerRNBancontactCardData>(rawDataStr)
|
|
127
|
+
.toPrimerBancontactCardData()
|
|
128
|
+
PrimerRawPaymentMethodType.XENDIT_RETAIL_OUTLETS ->
|
|
129
|
+
json.decodeFromString<PrimerRNRetailOutletData>(rawDataStr)
|
|
130
|
+
.toPrimerRetailOutletData()
|
|
107
131
|
}
|
|
108
132
|
rawManager.setRawData(rawData)
|
|
109
133
|
promise.resolve(null)
|
|
110
134
|
} catch (e: Exception) {
|
|
111
135
|
val exception =
|
|
112
136
|
ErrorTypeRN.NativeBridgeFailed errorTo "Failed to decode $rawDataStr on Android." +
|
|
113
|
-
" Make sure you're providing a valid object"
|
|
137
|
+
" Make sure you're providing a valid 'RawData' (or any inherited) object."
|
|
114
138
|
onError(exception)
|
|
115
139
|
promise.reject(exception.errorId, exception.description, e)
|
|
116
140
|
}
|
|
@@ -121,9 +145,7 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
121
145
|
fun submit(promise: Promise) {
|
|
122
146
|
if (::rawManager.isInitialized.not()) {
|
|
123
147
|
val exception =
|
|
124
|
-
ErrorTypeRN.NativeBridgeFailed errorTo
|
|
125
|
-
" has not been initialized. Make sure you have called the" +
|
|
126
|
-
" HeadlessUniversalCheckoutRawDataManager.configure function first."
|
|
148
|
+
ErrorTypeRN.NativeBridgeFailed errorTo UNINITIALIZED_ERROR
|
|
127
149
|
promise.reject(exception.errorId, exception.description)
|
|
128
150
|
} else {
|
|
129
151
|
rawManager.submit()
|
|
@@ -132,12 +154,10 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
132
154
|
}
|
|
133
155
|
|
|
134
156
|
@ReactMethod
|
|
135
|
-
fun
|
|
157
|
+
fun cleanUp(promise: Promise) {
|
|
136
158
|
if (::rawManager.isInitialized.not()) {
|
|
137
159
|
val exception =
|
|
138
|
-
ErrorTypeRN.NativeBridgeFailed errorTo
|
|
139
|
-
" has not been initialized. Make sure you have called the" +
|
|
140
|
-
" HeadlessUniversalCheckoutRawDataManager.configure function first."
|
|
160
|
+
ErrorTypeRN.NativeBridgeFailed errorTo UNINITIALIZED_ERROR
|
|
141
161
|
promise.reject(exception.errorId, exception.description)
|
|
142
162
|
} else {
|
|
143
163
|
rawManager.cleanup()
|
|
@@ -146,34 +166,10 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
146
166
|
}
|
|
147
167
|
|
|
148
168
|
@ReactMethod
|
|
149
|
-
fun
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
" has not been initialized. Make sure you have called the" +
|
|
154
|
-
" HeadlessUniversalCheckoutRawDataManager.configure function first."
|
|
155
|
-
promise.reject(exception.errorId, exception.description)
|
|
156
|
-
} else {
|
|
157
|
-
rawManager.configure { primerInitializationData, error ->
|
|
158
|
-
if (error == null) {
|
|
159
|
-
when (primerInitializationData) {
|
|
160
|
-
is RetailOutletsList -> {
|
|
161
|
-
promise.resolve(
|
|
162
|
-
prepareData(
|
|
163
|
-
JSONObject(
|
|
164
|
-
Json.encodeToString(
|
|
165
|
-
primerInitializationData.toRNRetailOutletsList()
|
|
166
|
-
)
|
|
167
|
-
)
|
|
168
|
-
)
|
|
169
|
-
)
|
|
170
|
-
}
|
|
171
|
-
else -> promise.resolve(null)
|
|
172
|
-
}
|
|
173
|
-
} else promise.reject(error.errorId, error.description)
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
169
|
+
fun addListener(eventName: String?) = Unit
|
|
170
|
+
|
|
171
|
+
@ReactMethod
|
|
172
|
+
fun removeListeners(count: Int?) = Unit
|
|
177
173
|
|
|
178
174
|
private fun sendEvent(name: String, params: WritableMap) {
|
|
179
175
|
reactApplicationContext.getJSModule(
|
|
@@ -199,4 +195,12 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
|
|
|
199
195
|
params.putMap(Keys.ERROR, errorData)
|
|
200
196
|
sendEvent(PrimerHeadlessUniversalCheckoutEvent.ON_ERROR.eventName, params)
|
|
201
197
|
}
|
|
198
|
+
|
|
199
|
+
private companion object {
|
|
200
|
+
const val UNINITIALIZED_ERROR =
|
|
201
|
+
"""
|
|
202
|
+
The RawDataManager has not been initialized.
|
|
203
|
+
Make sure you have initialized the `RawDataManager' first.
|
|
204
|
+
"""
|
|
205
|
+
}
|
|
202
206
|
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
package com.primerioreactnative.
|
|
1
|
+
package com.primerioreactnative.components.manager.raw
|
|
2
2
|
|
|
3
|
-
import com.primerioreactnative.
|
|
4
|
-
import com.primerioreactnative.
|
|
3
|
+
import com.primerioreactnative.components.events.PrimerHeadlessUniversalCheckoutRawDataManagerEvent
|
|
4
|
+
import com.primerioreactnative.datamodels.PrimerInputValidationErrorRN
|
|
5
5
|
import io.primer.android.ExperimentalPrimerApi
|
|
6
6
|
import io.primer.android.components.domain.core.models.card.PrimerCardMetadata
|
|
7
7
|
import io.primer.android.components.domain.core.models.metadata.PrimerPaymentMethodMetadata
|
|
8
8
|
import io.primer.android.components.domain.error.PrimerInputValidationError
|
|
9
|
-
import io.primer.android.components.manager.raw.PrimerHeadlessUniversalCheckoutRawDataManager
|
|
10
9
|
import io.primer.android.components.manager.raw.PrimerHeadlessUniversalCheckoutRawDataManagerListener
|
|
11
10
|
import kotlinx.serialization.encodeToString
|
|
12
11
|
import kotlinx.serialization.json.Json
|
|
@@ -28,7 +27,16 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManagerListener :
|
|
|
28
27
|
"errors",
|
|
29
28
|
JSONArray(
|
|
30
29
|
errors.map {
|
|
31
|
-
JSONObject(
|
|
30
|
+
JSONObject(
|
|
31
|
+
Json.encodeToString(
|
|
32
|
+
PrimerInputValidationErrorRN(
|
|
33
|
+
it.errorId,
|
|
34
|
+
it.description,
|
|
35
|
+
it.inputElementType.name,
|
|
36
|
+
it.diagnosticsId
|
|
37
|
+
)
|
|
38
|
+
)
|
|
39
|
+
)
|
|
32
40
|
}
|
|
33
41
|
)
|
|
34
42
|
)
|
|
@@ -6,13 +6,14 @@ import kotlinx.serialization.Serializable
|
|
|
6
6
|
data class PrimerErrorRN(
|
|
7
7
|
val errorId: String? = null,
|
|
8
8
|
val description: String? = null,
|
|
9
|
+
val diagnosticsId: String? = null,
|
|
9
10
|
val recoverySuggestion: String? = null
|
|
10
11
|
)
|
|
11
12
|
|
|
12
13
|
@Serializable
|
|
13
14
|
enum class ErrorTypeRN(val errorId: String) {
|
|
14
|
-
NativeBridgeFailed("native-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
NativeBridgeFailed("native-android"),
|
|
16
|
+
UnitializedSdkSession("uninitialized-sdk-session"),
|
|
17
|
+
UnsupportedPaymentMethod("unsupported-payment-method-type"),
|
|
18
|
+
UnsupportedPaymentIntent("unsupported-session-intent")
|
|
18
19
|
}
|
package/android/src/main/java/com/primerioreactnative/datamodels/PrimerInputValidationErrorRN.kt
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
package com.primerioreactnative.datamodels
|
|
2
|
+
|
|
3
|
+
import kotlinx.serialization.Serializable
|
|
4
|
+
|
|
5
|
+
@Serializable
|
|
6
|
+
data class PrimerInputValidationErrorRN(
|
|
7
|
+
val errorId: String? = null,
|
|
8
|
+
val description: String? = null,
|
|
9
|
+
val inputElementType: String? = null,
|
|
10
|
+
val diagnosticsId: String? = null
|
|
11
|
+
)
|
|
@@ -33,7 +33,7 @@ data class PrimerPaymentMethodOptionsRN(
|
|
|
33
33
|
var googlePayOptions: PrimerGooglePayOptionsRN = PrimerGooglePayOptionsRN(),
|
|
34
34
|
var klarnaOptions: PrimerKlarnaOptionsRN = PrimerKlarnaOptionsRN(),
|
|
35
35
|
var apayaOptions: PrimerApayaOptionsRN = PrimerApayaOptionsRN(),
|
|
36
|
-
var
|
|
36
|
+
var threeDsOptions: PrimerThreeDsOptionsRN = PrimerThreeDsOptionsRN()
|
|
37
37
|
)
|
|
38
38
|
|
|
39
39
|
@Serializable
|
|
@@ -54,6 +54,17 @@ data class PrimerCardPaymentOptionsRN(
|
|
|
54
54
|
var is3DSOnVaultingEnabled: Boolean = true
|
|
55
55
|
)
|
|
56
56
|
|
|
57
|
+
@Serializable
|
|
58
|
+
data class PrimerThreeDsOptionsRN(
|
|
59
|
+
@SerialName("android")
|
|
60
|
+
val threeDsOptionsAndroid: PrimerThreeDsAndroidOptionsRN? = null
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
@Serializable
|
|
64
|
+
data class PrimerThreeDsAndroidOptionsRN(
|
|
65
|
+
val threeDsAppRequestorUrl: String? = null
|
|
66
|
+
)
|
|
67
|
+
|
|
57
68
|
@Serializable
|
|
58
69
|
data class PrimerGooglePayOptionsRN(
|
|
59
70
|
var merchantName: String? = null,
|
|
@@ -65,7 +76,7 @@ data class PrimerGooglePayOptionsRN(
|
|
|
65
76
|
"VISA"
|
|
66
77
|
),
|
|
67
78
|
var buttonStyle: GooglePayButtonStyle = GooglePayButtonStyle.BLACK,
|
|
68
|
-
var captureBillingAddress: Boolean = false
|
|
79
|
+
@SerialName("isCaptureBillingAddressEnabled") var captureBillingAddress: Boolean = false
|
|
69
80
|
)
|
|
70
81
|
|
|
71
82
|
@Serializable
|
|
@@ -81,13 +92,6 @@ data class PrimerApayaOptionsRN(
|
|
|
81
92
|
var webViewTitle: String? = null,
|
|
82
93
|
)
|
|
83
94
|
|
|
84
|
-
@Serializable
|
|
85
|
-
@Deprecated("This class is deprecated and will be removed in future release.")
|
|
86
|
-
data class PrimerGoCardlessOptionsRN(
|
|
87
|
-
var businessName: String? = null,
|
|
88
|
-
var businessAddress: String? = null,
|
|
89
|
-
)
|
|
90
|
-
|
|
91
95
|
fun PrimerSettingsRN.toPrimerSettings() = PrimerSettings(
|
|
92
96
|
paymentHandling,
|
|
93
97
|
localeData.toLocale(),
|
package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt
CHANGED
|
@@ -8,7 +8,7 @@ fun PrimerPaymentMethodOptionsRN.toPrimerPaymentMethodOptions() = PrimerPaymentM
|
|
|
8
8
|
googlePayOptions.toPrimerGooglePayOptions(),
|
|
9
9
|
klarnaOptions.toPrimerKlarnaOptions(),
|
|
10
10
|
apayaOptions.toPrimerApayaOptions(),
|
|
11
|
-
|
|
11
|
+
threeDsOptions.toPrimerThreeDsOptions()
|
|
12
12
|
)
|
|
13
13
|
|
|
14
14
|
fun PrimerGooglePayOptionsRN.toPrimerGooglePayOptions() =
|
|
@@ -19,5 +19,5 @@ fun PrimerKlarnaOptionsRN.toPrimerKlarnaOptions() =
|
|
|
19
19
|
|
|
20
20
|
fun PrimerApayaOptionsRN.toPrimerApayaOptions() = PrimerApayaOptions(webViewTitle)
|
|
21
21
|
|
|
22
|
-
fun
|
|
23
|
-
|
|
22
|
+
fun PrimerThreeDsOptionsRN.toPrimerThreeDsOptions() =
|
|
23
|
+
PrimerThreeDsOptions(threeDsOptionsAndroid?.threeDsAppRequestorUrl)
|
|
@@ -15,20 +15,20 @@ data class PrimerHeadlessUniversalCheckoutImplementedRNCallbacks(
|
|
|
15
15
|
val isOnBeforePaymentCreateImplemented: Boolean? = null,
|
|
16
16
|
@SerialName("onError")
|
|
17
17
|
val isOnErrorImplemented: Boolean? = null,
|
|
18
|
-
@SerialName("
|
|
18
|
+
@SerialName("onTokenizationSuccess")
|
|
19
19
|
val isOnTokenizeSuccessImplemented: Boolean? = null,
|
|
20
|
-
@SerialName("
|
|
21
|
-
val
|
|
22
|
-
@SerialName("
|
|
23
|
-
val
|
|
24
|
-
@SerialName("
|
|
25
|
-
val
|
|
26
|
-
@SerialName("
|
|
27
|
-
val
|
|
28
|
-
@SerialName("
|
|
29
|
-
val
|
|
30
|
-
@SerialName("
|
|
31
|
-
val
|
|
32
|
-
@SerialName("
|
|
33
|
-
val
|
|
20
|
+
@SerialName("onCheckoutResume")
|
|
21
|
+
val isOnCheckoutResumeImplemented: Boolean? = null,
|
|
22
|
+
@SerialName("onCheckoutPending")
|
|
23
|
+
val isOnCheckoutPendingImplemented: Boolean? = null,
|
|
24
|
+
@SerialName("onCheckoutAdditionalInfo")
|
|
25
|
+
val isOnCheckoutAdditionalInfoImplemented: Boolean? = null,
|
|
26
|
+
@SerialName("onTokenizationStart")
|
|
27
|
+
val isOnTokenizationStartImplemented: Boolean? = null,
|
|
28
|
+
@SerialName("onPreparationStart")
|
|
29
|
+
val isOnPreparationStartImplemented: Boolean? = null,
|
|
30
|
+
@SerialName("onAvailablePaymentMethodsLoad")
|
|
31
|
+
val isOnAvailablePaymentMethodsLoadImplemented: Boolean? = null,
|
|
32
|
+
@SerialName("onPaymentMethodShow")
|
|
33
|
+
val isOnPaymentMethodShowImplemented: Boolean? = null,
|
|
34
34
|
)
|
|
@@ -17,12 +17,12 @@ data class PrimerImplementedRNCallbacks(
|
|
|
17
17
|
val isOnErrorImplemented: Boolean? = null,
|
|
18
18
|
@SerialName("onDismiss")
|
|
19
19
|
val isOnDismissImplemented: Boolean? = null,
|
|
20
|
-
@SerialName("
|
|
20
|
+
@SerialName("onTokenizationSuccess")
|
|
21
21
|
val isOnTokenizeSuccessImplemented: Boolean? = null,
|
|
22
|
-
@SerialName("
|
|
23
|
-
val
|
|
24
|
-
@SerialName("
|
|
25
|
-
val
|
|
26
|
-
@SerialName("
|
|
27
|
-
val
|
|
22
|
+
@SerialName("onCheckoutResume")
|
|
23
|
+
val isOnCheckoutResumeImplemented: Boolean? = null,
|
|
24
|
+
@SerialName("onCheckoutPending")
|
|
25
|
+
val isOnCheckoutPendingImplemented: Boolean? = null,
|
|
26
|
+
@SerialName("onCheckoutAdditionalInfo")
|
|
27
|
+
val isOnCheckoutAdditionalInfoImplemented: Boolean? = null,
|
|
28
28
|
)
|
package/ios/Podfile.lock
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
1DEBE0FE26C2D875004E3064 /* PrimerSettingsRN.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEBE0FD26C2D875004E3064 /* PrimerSettingsRN.swift */; };
|
|
15
15
|
1DEBE10026C2D88E004E3064 /* PrimerThemeRN.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEBE0FF26C2D88E004E3064 /* PrimerThemeRN.swift */; };
|
|
16
16
|
1DEBE10226C2D8BA004E3064 /* PaymentInstrumentTokenRN.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEBE10126C2D8BA004E3064 /* PaymentInstrumentTokenRN.swift */; };
|
|
17
|
-
|
|
17
|
+
3513609F0CAED44C39E307A6 /* libPods-ReactNative.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BC6985820719A2A61EB3DD8 /* libPods-ReactNative.a */; };
|
|
18
18
|
F4FF95D7245B92E800C19C63 /* UniversalCheckoutRN.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4FF95D6245B92E800C19C63 /* UniversalCheckoutRN.swift */; };
|
|
19
19
|
/* End PBXBuildFile section */
|
|
20
20
|
|
|
@@ -32,16 +32,16 @@
|
|
|
32
32
|
|
|
33
33
|
/* Begin PBXFileReference section */
|
|
34
34
|
134814201AA4EA6300B7C361 /* libReactNative.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libReactNative.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
35
|
+
1BC6985820719A2A61EB3DD8 /* libPods-ReactNative.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNative.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
35
36
|
1DEBE0F626C2D594004E3064 /* PrimerRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimerRN.swift; sourceTree = "<group>"; };
|
|
36
37
|
1DEBE0F926C2D75A004E3064 /* PrimerFlowRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimerFlowRN.swift; sourceTree = "<group>"; };
|
|
37
38
|
1DEBE0FB26C2D859004E3064 /* PrimerExceptionRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimerExceptionRN.swift; sourceTree = "<group>"; };
|
|
38
39
|
1DEBE0FD26C2D875004E3064 /* PrimerSettingsRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimerSettingsRN.swift; sourceTree = "<group>"; };
|
|
39
40
|
1DEBE0FF26C2D88E004E3064 /* PrimerThemeRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimerThemeRN.swift; sourceTree = "<group>"; };
|
|
40
41
|
1DEBE10126C2D8BA004E3064 /* PaymentInstrumentTokenRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentInstrumentTokenRN.swift; sourceTree = "<group>"; };
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
568A70304A987529851A447E /* Pods-ReactNative.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNative.release.xcconfig"; path = "Target Support Files/Pods-ReactNative/Pods-ReactNative.release.xcconfig"; sourceTree = "<group>"; };
|
|
43
|
+
AED192A9C2698C599CF21663 /* Pods-ReactNative.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ReactNative.debug.xcconfig"; path = "Target Support Files/Pods-ReactNative/Pods-ReactNative.debug.xcconfig"; sourceTree = "<group>"; };
|
|
43
44
|
B3E7B5891CC2AC0600A0062D /* ReactNative.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReactNative.m; sourceTree = "<group>"; };
|
|
44
|
-
BADF4926CED3501185F76198 /* libPods-ReactNative.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ReactNative.a"; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
45
45
|
F4FF95D5245B92E700C19C63 /* ReactNative-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ReactNative-Bridging-Header.h"; sourceTree = "<group>"; };
|
|
46
46
|
F4FF95D6245B92E800C19C63 /* UniversalCheckoutRN.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UniversalCheckoutRN.swift; sourceTree = "<group>"; };
|
|
47
47
|
/* End PBXFileReference section */
|
|
@@ -51,13 +51,21 @@
|
|
|
51
51
|
isa = PBXFrameworksBuildPhase;
|
|
52
52
|
buildActionMask = 2147483647;
|
|
53
53
|
files = (
|
|
54
|
-
|
|
54
|
+
3513609F0CAED44C39E307A6 /* libPods-ReactNative.a in Frameworks */,
|
|
55
55
|
);
|
|
56
56
|
runOnlyForDeploymentPostprocessing = 0;
|
|
57
57
|
};
|
|
58
58
|
/* End PBXFrameworksBuildPhase section */
|
|
59
59
|
|
|
60
60
|
/* Begin PBXGroup section */
|
|
61
|
+
11BA866BDA971C4D4B96C2C4 /* Frameworks */ = {
|
|
62
|
+
isa = PBXGroup;
|
|
63
|
+
children = (
|
|
64
|
+
1BC6985820719A2A61EB3DD8 /* libPods-ReactNative.a */,
|
|
65
|
+
);
|
|
66
|
+
name = Frameworks;
|
|
67
|
+
sourceTree = "<group>";
|
|
68
|
+
};
|
|
61
69
|
134814211AA4EA7D00B7C361 /* Products */ = {
|
|
62
70
|
isa = PBXGroup;
|
|
63
71
|
children = (
|
|
@@ -81,8 +89,8 @@
|
|
|
81
89
|
38076040A533828516C55677 /* Pods */ = {
|
|
82
90
|
isa = PBXGroup;
|
|
83
91
|
children = (
|
|
84
|
-
|
|
85
|
-
|
|
92
|
+
AED192A9C2698C599CF21663 /* Pods-ReactNative.debug.xcconfig */,
|
|
93
|
+
568A70304A987529851A447E /* Pods-ReactNative.release.xcconfig */,
|
|
86
94
|
);
|
|
87
95
|
path = Pods;
|
|
88
96
|
sourceTree = "<group>";
|
|
@@ -97,18 +105,10 @@
|
|
|
97
105
|
F4FF95D5245B92E700C19C63 /* ReactNative-Bridging-Header.h */,
|
|
98
106
|
134814211AA4EA7D00B7C361 /* Products */,
|
|
99
107
|
38076040A533828516C55677 /* Pods */,
|
|
100
|
-
|
|
108
|
+
11BA866BDA971C4D4B96C2C4 /* Frameworks */,
|
|
101
109
|
);
|
|
102
110
|
sourceTree = "<group>";
|
|
103
111
|
};
|
|
104
|
-
E193973ADE52A4E8D27FFC73 /* Frameworks */ = {
|
|
105
|
-
isa = PBXGroup;
|
|
106
|
-
children = (
|
|
107
|
-
BADF4926CED3501185F76198 /* libPods-ReactNative.a */,
|
|
108
|
-
);
|
|
109
|
-
name = Frameworks;
|
|
110
|
-
sourceTree = "<group>";
|
|
111
|
-
};
|
|
112
112
|
/* End PBXGroup section */
|
|
113
113
|
|
|
114
114
|
/* Begin PBXNativeTarget section */
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
isa = PBXNativeTarget;
|
|
117
117
|
buildConfigurationList = 58B511EF1A9E6C8500147676 /* Build configuration list for PBXNativeTarget "ReactNative" */;
|
|
118
118
|
buildPhases = (
|
|
119
|
-
|
|
119
|
+
64FF98C09B1E65E78CC7F5BB /* [CP] Check Pods Manifest.lock */,
|
|
120
120
|
58B511D71A9E6C8500147676 /* Sources */,
|
|
121
121
|
58B511D81A9E6C8500147676 /* Frameworks */,
|
|
122
122
|
58B511D91A9E6C8500147676 /* CopyFiles */,
|
|
@@ -163,7 +163,7 @@
|
|
|
163
163
|
/* End PBXProject section */
|
|
164
164
|
|
|
165
165
|
/* Begin PBXShellScriptBuildPhase section */
|
|
166
|
-
|
|
166
|
+
64FF98C09B1E65E78CC7F5BB /* [CP] Check Pods Manifest.lock */ = {
|
|
167
167
|
isa = PBXShellScriptBuildPhase;
|
|
168
168
|
buildActionMask = 2147483647;
|
|
169
169
|
files = (
|
|
@@ -310,7 +310,7 @@
|
|
|
310
310
|
};
|
|
311
311
|
58B511F01A9E6C8500147676 /* Debug */ = {
|
|
312
312
|
isa = XCBuildConfiguration;
|
|
313
|
-
baseConfigurationReference =
|
|
313
|
+
baseConfigurationReference = AED192A9C2698C599CF21663 /* Pods-ReactNative.debug.xcconfig */;
|
|
314
314
|
buildSettings = {
|
|
315
315
|
HEADER_SEARCH_PATHS = (
|
|
316
316
|
"$(inherited)",
|
|
@@ -330,7 +330,7 @@
|
|
|
330
330
|
};
|
|
331
331
|
58B511F11A9E6C8500147676 /* Release */ = {
|
|
332
332
|
isa = XCBuildConfiguration;
|
|
333
|
-
baseConfigurationReference =
|
|
333
|
+
baseConfigurationReference = 568A70304A987529851A447E /* Pods-ReactNative.release.xcconfig */;
|
|
334
334
|
buildSettings = {
|
|
335
335
|
HEADER_SEARCH_PATHS = (
|
|
336
336
|
"$(inherited)",
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
//
|
|
2
|
+
// ImplementedRNCallbacks.swift
|
|
3
|
+
// primer-io-react-native
|
|
4
|
+
//
|
|
5
|
+
// Created by Evangelos on 20/5/22.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
|
|
10
|
+
internal struct ImplementedRNCallbacks: Decodable {
|
|
11
|
+
|
|
12
|
+
internal var isOnAvailablePaymentMethodsLoadImplemented = false
|
|
13
|
+
internal var isOnTokenizationStartImplemented = false
|
|
14
|
+
internal var isOnTokenizationSuccessImplemented = false
|
|
15
|
+
|
|
16
|
+
internal var isOnCheckoutResumeImplemented = false
|
|
17
|
+
internal var isOnCheckoutPendingImplemented = false
|
|
18
|
+
internal var isOnCheckoutAdditionalInfoImplemented = false
|
|
19
|
+
|
|
20
|
+
internal var isOnErrorImplemented = false
|
|
21
|
+
internal var isOnCheckoutCompleteImplemented = false
|
|
22
|
+
internal var isOnBeforeClientSessionUpdateImplemented = false
|
|
23
|
+
|
|
24
|
+
internal var isOnClientSessionUpdateImplemented = false
|
|
25
|
+
internal var isOnBeforePaymentCreateImplemented = false
|
|
26
|
+
internal var isOnPreparationStartImplemented = false
|
|
27
|
+
|
|
28
|
+
internal var isOnPaymentMethodShowImplemented = false
|
|
29
|
+
internal var isOnDismissImplemented = false
|
|
30
|
+
|
|
31
|
+
enum CodingKeys: String, CodingKey {
|
|
32
|
+
|
|
33
|
+
case isOnAvailablePaymentMethodsLoadImplemented = "onAvailablePaymentMethodsLoad"
|
|
34
|
+
case isOnTokenizationStartImplemented = "onTokenizationStart"
|
|
35
|
+
case isOnTokenizationSuccessImplemented = "onTokenizationSuccess"
|
|
36
|
+
|
|
37
|
+
case isOnCheckoutResumeImplemented = "onCheckoutResume"
|
|
38
|
+
case isOnCheckoutPendingImplemented = "onCheckoutPending"
|
|
39
|
+
case isOnCheckoutAdditionalInfoImplemented = "onCheckoutAdditionalInfo"
|
|
40
|
+
|
|
41
|
+
case isOnErrorImplemented = "onError"
|
|
42
|
+
case isOnCheckoutCompleteImplemented = "onCheckoutComplete"
|
|
43
|
+
case isOnBeforeClientSessionUpdateImplemented = "onBeforeClientSessionUpdate"
|
|
44
|
+
|
|
45
|
+
case isOnClientSessionUpdateImplemented = "onClientSessionUpdate"
|
|
46
|
+
case isOnBeforePaymentCreateImplemented = "onBeforePaymentCreate"
|
|
47
|
+
case isOnPreparationStartImplemented = "onPreparationStart"
|
|
48
|
+
|
|
49
|
+
case isOnPaymentMethodShowImplemented = "onPaymentMethodShow"
|
|
50
|
+
case isOnDismissImplemented = "onDismiss"
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
init(from decoder: Decoder) throws {
|
|
54
|
+
let container = try decoder.container(keyedBy: CodingKeys.self)
|
|
55
|
+
|
|
56
|
+
self.isOnAvailablePaymentMethodsLoadImplemented = (try? container.decode(Bool.self, forKey: .isOnAvailablePaymentMethodsLoadImplemented)) ?? false
|
|
57
|
+
self.isOnTokenizationStartImplemented = (try? container.decode(Bool.self, forKey: .isOnTokenizationStartImplemented)) ?? false
|
|
58
|
+
self.isOnTokenizationSuccessImplemented = (try? container.decode(Bool.self, forKey: .isOnTokenizationSuccessImplemented)) ?? false
|
|
59
|
+
|
|
60
|
+
self.isOnCheckoutResumeImplemented = (try? container.decode(Bool.self, forKey: .isOnCheckoutResumeImplemented)) ?? false
|
|
61
|
+
self.isOnCheckoutPendingImplemented = (try? container.decode(Bool.self, forKey: .isOnCheckoutPendingImplemented)) ?? false
|
|
62
|
+
self.isOnCheckoutAdditionalInfoImplemented = (try? container.decode(Bool.self, forKey: .isOnCheckoutAdditionalInfoImplemented)) ?? false
|
|
63
|
+
|
|
64
|
+
self.isOnErrorImplemented = (try? container.decode(Bool.self, forKey: .isOnErrorImplemented)) ?? false
|
|
65
|
+
self.isOnCheckoutCompleteImplemented = (try? container.decode(Bool.self, forKey: .isOnCheckoutCompleteImplemented)) ?? false
|
|
66
|
+
self.isOnBeforeClientSessionUpdateImplemented = (try? container.decode(Bool.self, forKey: .isOnBeforeClientSessionUpdateImplemented)) ?? false
|
|
67
|
+
|
|
68
|
+
self.isOnClientSessionUpdateImplemented = (try? container.decode(Bool.self, forKey: .isOnClientSessionUpdateImplemented)) ?? false
|
|
69
|
+
self.isOnBeforePaymentCreateImplemented = (try? container.decode(Bool.self, forKey: .isOnBeforePaymentCreateImplemented)) ?? false
|
|
70
|
+
self.isOnPreparationStartImplemented = (try? container.decode(Bool.self, forKey: .isOnPreparationStartImplemented)) ?? false
|
|
71
|
+
|
|
72
|
+
self.isOnPaymentMethodShowImplemented = (try? container.decode(Bool.self, forKey: .isOnPaymentMethodShowImplemented)) ?? false
|
|
73
|
+
self.isOnDismissImplemented = (try? container.decode(Bool.self, forKey: .isOnDismissImplemented)) ?? false
|
|
74
|
+
}
|
|
75
|
+
}
|