@primer-io/react-native 2.16.2 → 2.17.0-rc.1
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 +13 -34
- 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 +99 -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 +0 -8
- package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt +0 -4
- 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 +82 -0
- package/ios/{DataModels → Sources/DataModels}/PrimerThemeRN.swift +0 -0
- package/ios/Sources/DataModels/RNTNativeError.swift +22 -0
- package/ios/Sources/DataModels/RNTPrimerPaymentMethodAsset.swift +65 -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/{Headless Universal Checkout → Sources/Headless Universal Checkout/Managers/Payment Method Managers}/RNTPrimerCardNumberInputElementManager.m +0 -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 +80 -0
- package/ios/{RNTPrimer.swift → Sources/RNTPrimer.swift} +20 -34
- 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 +52 -52
- package/lib/commonjs/Primer.js.map +1 -1
- package/lib/commonjs/PrimerInput.js.map +1 -1
- package/lib/commonjs/RNPrimer.js +2 -12
- 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 +52 -52
- package/lib/module/Primer.js.map +1 -1
- package/lib/module/PrimerInput.js.map +1 -1
- package/lib/module/RNPrimer.js +2 -12
- 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 +3 -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 +14 -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 +2 -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 +30 -16
- 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 +49 -60
- package/src/RNPrimer.ts +2 -18
- package/src/index.tsx +43 -29
- package/src/models/PrimerAsset.ts +13 -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 +1 -28
- package/src/models/PrimerPaymentMethodManagerCategory.ts +5 -0
- package/src/models/PrimerRawData.ts +6 -10
- package/src/models/PrimerSettings.ts +40 -26
- 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/src/Primer.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { PrimerCheckoutData } from './models/PrimerCheckoutData';
|
|
2
|
-
import type { PrimerSessionIntent } from './models/PrimerSessionIntent';
|
|
3
2
|
import type { PrimerSettings } from './models/PrimerSettings';
|
|
4
3
|
import RNPrimer from './RNPrimer';
|
|
5
4
|
import type { PrimerCheckoutPaymentMethodData } from './models/PrimerCheckoutPaymentMethodData';
|
|
6
5
|
import type { PrimerClientSession } from './models/PrimerClientSession';
|
|
7
6
|
import type { PrimerPaymentMethodTokenData } from './models/PrimerPaymentMethodTokenData';
|
|
8
7
|
import { PrimerError } from './models/PrimerError';
|
|
9
|
-
import type { IPrimer, PrimerErrorHandler, PrimerPaymentCreationHandler, PrimerResumeHandler, PrimerTokenizationHandler } from './models/PrimerInterfaces';
|
|
10
8
|
import type { PrimerCheckoutAdditionalInfo } from './models/PrimerCheckoutAdditionalInfo';
|
|
9
|
+
import type { PrimerErrorHandler, PrimerPaymentCreationHandler, PrimerResumeHandler, PrimerTokenizationHandler } from './models/PrimerHandlers';
|
|
10
|
+
import type { IPrimer } from './models/PrimerInterfaces';
|
|
11
|
+
import type { PrimerImplementedRNCallbacks } from './models/PrimerImplementedRNCallbacks';
|
|
11
12
|
|
|
12
13
|
///////////////////////////////////////////
|
|
13
14
|
// DECISION HANDLERS
|
|
@@ -108,80 +109,88 @@ async function configureListeners(): Promise<void> {
|
|
|
108
109
|
try {
|
|
109
110
|
RNPrimer.removeAllListeners();
|
|
110
111
|
|
|
111
|
-
let implementedRNCallbacks:
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
112
|
+
let implementedRNCallbacks: PrimerImplementedRNCallbacks = {
|
|
113
|
+
onAvailablePaymentMethodsLoad: false,
|
|
114
|
+
onTokenizationStart: false,
|
|
115
|
+
onTokenizationSuccess: (primerSettings?.primerCallbacks?.onTokenizeSuccess !== undefined) || false,
|
|
116
|
+
|
|
117
|
+
onCheckoutResume: (primerSettings?.primerCallbacks?.onResumeSuccess !== undefined) || false,
|
|
118
|
+
onCheckoutPending: (primerSettings?.primerCallbacks?.onResumePending !== undefined) || false,
|
|
119
|
+
onCheckoutAdditionalInfo: (primerSettings?.primerCallbacks?.onCheckoutReceivedAdditionalInfo !== undefined) || false,
|
|
120
|
+
|
|
121
|
+
onError: (primerSettings?.primerCallbacks?.onError !== undefined) || false,
|
|
122
|
+
onCheckoutComplete: (primerSettings?.primerCallbacks?.onCheckoutComplete !== undefined) || false,
|
|
123
|
+
onBeforeClientSessionUpdate: (primerSettings?.primerCallbacks?.onBeforeClientSessionUpdate !== undefined) || false,
|
|
124
|
+
|
|
125
|
+
onClientSessionUpdate: (primerSettings?.primerCallbacks?.onClientSessionUpdate !== undefined) || false,
|
|
126
|
+
onBeforePaymentCreate: (primerSettings?.primerCallbacks?.onBeforePaymentCreate !== undefined) || false,
|
|
127
|
+
onPreparationStart: false,
|
|
128
|
+
|
|
129
|
+
onPaymentMethodShow: false,
|
|
130
|
+
onDismiss: (primerSettings?.primerCallbacks?.onDismiss !== undefined) || false
|
|
122
131
|
};
|
|
123
132
|
|
|
124
133
|
await RNPrimer.setImplementedRNCallbacks(implementedRNCallbacks);
|
|
125
134
|
|
|
126
135
|
if (implementedRNCallbacks.onCheckoutComplete) {
|
|
127
136
|
RNPrimer.addListener('onCheckoutComplete', data => {
|
|
128
|
-
if (primerSettings && primerSettings.onCheckoutComplete) {
|
|
137
|
+
if (primerSettings && primerSettings.primerCallbacks?.onCheckoutComplete) {
|
|
129
138
|
const checkoutData: PrimerCheckoutData = data;
|
|
130
|
-
primerSettings.onCheckoutComplete(checkoutData);
|
|
139
|
+
primerSettings.primerCallbacks.onCheckoutComplete(checkoutData);
|
|
131
140
|
}
|
|
132
141
|
});
|
|
133
142
|
}
|
|
134
143
|
|
|
135
144
|
if (implementedRNCallbacks.onBeforePaymentCreate) {
|
|
136
145
|
RNPrimer.addListener('onBeforePaymentCreate', data => {
|
|
137
|
-
if (primerSettings && primerSettings.onBeforePaymentCreate) {
|
|
146
|
+
if (primerSettings && primerSettings.primerCallbacks?.onBeforePaymentCreate) {
|
|
138
147
|
const checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData = data;
|
|
139
|
-
primerSettings.onBeforePaymentCreate(checkoutPaymentMethodData, paymentCreationHandler);
|
|
148
|
+
primerSettings.primerCallbacks.onBeforePaymentCreate(checkoutPaymentMethodData, paymentCreationHandler);
|
|
140
149
|
}
|
|
141
150
|
});
|
|
142
151
|
}
|
|
143
152
|
|
|
144
153
|
if (implementedRNCallbacks.onBeforeClientSessionUpdate) {
|
|
145
154
|
RNPrimer.addListener('onBeforeClientSessionUpdate', _ => {
|
|
146
|
-
if (primerSettings && primerSettings.onBeforeClientSessionUpdate) {
|
|
147
|
-
primerSettings.onBeforeClientSessionUpdate();
|
|
155
|
+
if (primerSettings && primerSettings.primerCallbacks?.onBeforeClientSessionUpdate) {
|
|
156
|
+
primerSettings.primerCallbacks.onBeforeClientSessionUpdate();
|
|
148
157
|
}
|
|
149
158
|
});
|
|
150
159
|
}
|
|
151
160
|
|
|
152
161
|
if (implementedRNCallbacks.onClientSessionUpdate) {
|
|
153
162
|
RNPrimer.addListener('onClientSessionUpdate', data => {
|
|
154
|
-
if (primerSettings && primerSettings.onClientSessionUpdate) {
|
|
163
|
+
if (primerSettings && primerSettings.primerCallbacks?.onClientSessionUpdate) {
|
|
155
164
|
const clientSession: PrimerClientSession = data;
|
|
156
|
-
primerSettings.onClientSessionUpdate(clientSession);
|
|
165
|
+
primerSettings.primerCallbacks.onClientSessionUpdate(clientSession);
|
|
157
166
|
}
|
|
158
167
|
});
|
|
159
168
|
}
|
|
160
169
|
|
|
161
|
-
if (implementedRNCallbacks.
|
|
170
|
+
if (implementedRNCallbacks.onTokenizationSuccess) {
|
|
162
171
|
RNPrimer.addListener('onTokenizeSuccess', data => {
|
|
163
|
-
if (primerSettings && primerSettings.onTokenizeSuccess) {
|
|
172
|
+
if (primerSettings && primerSettings.primerCallbacks?.onTokenizeSuccess) {
|
|
164
173
|
const paymentMethodTokenData: PrimerPaymentMethodTokenData = data;
|
|
165
|
-
primerSettings.onTokenizeSuccess(paymentMethodTokenData, tokenizationHandler);
|
|
174
|
+
primerSettings.primerCallbacks.onTokenizeSuccess(paymentMethodTokenData, tokenizationHandler);
|
|
166
175
|
}
|
|
167
176
|
});
|
|
168
177
|
}
|
|
169
178
|
|
|
170
|
-
if (implementedRNCallbacks.
|
|
179
|
+
if (implementedRNCallbacks.onCheckoutResume) {
|
|
171
180
|
RNPrimer.addListener('onResumeSuccess', data => {
|
|
172
|
-
if (primerSettings && primerSettings.onResumeSuccess && data.resumeToken) {
|
|
173
|
-
primerSettings.onResumeSuccess(data.resumeToken, resumeHandler);
|
|
181
|
+
if (primerSettings && primerSettings.primerCallbacks?.onResumeSuccess && data.resumeToken) {
|
|
182
|
+
primerSettings.primerCallbacks.onResumeSuccess(data.resumeToken, resumeHandler);
|
|
174
183
|
}
|
|
175
184
|
});
|
|
176
185
|
}
|
|
177
186
|
|
|
178
|
-
if (implementedRNCallbacks.
|
|
187
|
+
if (implementedRNCallbacks.onCheckoutPending) {
|
|
179
188
|
RNPrimer.addListener(
|
|
180
189
|
'onResumePending',
|
|
181
190
|
(additionalInfo) => {
|
|
182
|
-
if (primerSettings && primerSettings.onResumePending) {
|
|
191
|
+
if (primerSettings && primerSettings.primerCallbacks?.onResumePending) {
|
|
183
192
|
const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = additionalInfo;
|
|
184
|
-
primerSettings.onResumePending(checkoutAdditionalInfo);
|
|
193
|
+
primerSettings.primerCallbacks.onResumePending(checkoutAdditionalInfo);
|
|
185
194
|
} else {
|
|
186
195
|
// Ignore!
|
|
187
196
|
}
|
|
@@ -189,13 +198,13 @@ async function configureListeners(): Promise<void> {
|
|
|
189
198
|
);
|
|
190
199
|
}
|
|
191
200
|
|
|
192
|
-
if (implementedRNCallbacks.
|
|
201
|
+
if (implementedRNCallbacks.onCheckoutAdditionalInfo) {
|
|
193
202
|
RNPrimer.addListener(
|
|
194
203
|
'onCheckoutReceivedAdditionalInfo',
|
|
195
204
|
(additionalInfo) => {
|
|
196
|
-
if (primerSettings && primerSettings.onCheckoutReceivedAdditionalInfo) {
|
|
205
|
+
if (primerSettings && primerSettings.primerCallbacks?.onCheckoutReceivedAdditionalInfo) {
|
|
197
206
|
const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = additionalInfo;
|
|
198
|
-
primerSettings.onCheckoutReceivedAdditionalInfo(checkoutAdditionalInfo);
|
|
207
|
+
primerSettings.primerCallbacks.onCheckoutReceivedAdditionalInfo(checkoutAdditionalInfo);
|
|
199
208
|
} else {
|
|
200
209
|
// Ignore!
|
|
201
210
|
}
|
|
@@ -205,25 +214,21 @@ async function configureListeners(): Promise<void> {
|
|
|
205
214
|
|
|
206
215
|
if (implementedRNCallbacks.onDismiss) {
|
|
207
216
|
RNPrimer.addListener('onDismiss', _ => {
|
|
208
|
-
if (primerSettings && primerSettings.onDismiss) {
|
|
209
|
-
primerSettings.onDismiss();
|
|
217
|
+
if (primerSettings && primerSettings.primerCallbacks?.onDismiss) {
|
|
218
|
+
primerSettings.primerCallbacks.onDismiss();
|
|
210
219
|
}
|
|
211
220
|
});
|
|
212
221
|
}
|
|
213
222
|
|
|
214
223
|
if (implementedRNCallbacks.onError) {
|
|
215
224
|
RNPrimer.addListener('onError', data => {
|
|
216
|
-
if (data && data.error && data.error.errorId && primerSettings && primerSettings.onError) {
|
|
225
|
+
if (data && data.error && data.error.errorId && primerSettings && primerSettings.primerCallbacks?.onError) {
|
|
217
226
|
const errorId: string = data.error.errorId;
|
|
218
227
|
const description: string | undefined = data.error.description;
|
|
219
228
|
const recoverySuggestion: string | undefined = data.error.recoverySuggestion;
|
|
220
|
-
const
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
primerSettings.onError(primerError, data.checkoutData, errorHandler);
|
|
224
|
-
} else {
|
|
225
|
-
primerSettings.onError(primerError, null, errorHandler);
|
|
226
|
-
}
|
|
229
|
+
const diagnosticsId: string | undefined = data.error.diagnosticsId;
|
|
230
|
+
const primerError = new PrimerError(errorId, description || 'Unknown error', recoverySuggestion, diagnosticsId);
|
|
231
|
+
primerSettings.primerCallbacks.onError(primerError, data.checkoutData || null, errorHandler);
|
|
227
232
|
}
|
|
228
233
|
});
|
|
229
234
|
}
|
|
@@ -278,23 +283,7 @@ export const Primer: IPrimer = {
|
|
|
278
283
|
});
|
|
279
284
|
},
|
|
280
285
|
|
|
281
|
-
|
|
282
|
-
paymentMethodType: string,
|
|
283
|
-
intent: PrimerSessionIntent,
|
|
284
|
-
clientToken: string
|
|
285
|
-
): Promise<void> {
|
|
286
|
-
return new Promise(async (resolve, reject) => {
|
|
287
|
-
try {
|
|
288
|
-
await configureListeners();
|
|
289
|
-
await RNPrimer.showPaymentMethod(paymentMethodType, intent, clientToken);
|
|
290
|
-
resolve();
|
|
291
|
-
} catch (err) {
|
|
292
|
-
reject(err);
|
|
293
|
-
}
|
|
294
|
-
});
|
|
295
|
-
},
|
|
296
|
-
|
|
297
|
-
dispose(): void {
|
|
286
|
+
cleanUp(): void {
|
|
298
287
|
RNPrimer.removeAllListeners();
|
|
299
288
|
RNPrimer.dismiss();
|
|
300
289
|
},
|
package/src/RNPrimer.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { NativeEventEmitter, NativeModules } from 'react-native';
|
|
2
|
-
import type { PrimerSessionIntent } from './models/PrimerSessionIntent';
|
|
3
2
|
import type { PrimerSettings } from './models/PrimerSettings';
|
|
4
3
|
|
|
5
4
|
const { NativePrimer } = NativeModules;
|
|
@@ -95,21 +94,6 @@ const RNPrimer = {
|
|
|
95
94
|
});
|
|
96
95
|
},
|
|
97
96
|
|
|
98
|
-
showPaymentMethod: (
|
|
99
|
-
paymentMethodType: string,
|
|
100
|
-
intent: PrimerSessionIntent,
|
|
101
|
-
clientToken: string
|
|
102
|
-
): Promise<void> => {
|
|
103
|
-
return new Promise(async (resolve, reject) => {
|
|
104
|
-
try {
|
|
105
|
-
await NativePrimer.showPaymentMethod(paymentMethodType, intent, clientToken);
|
|
106
|
-
resolve();
|
|
107
|
-
} catch (err) {
|
|
108
|
-
reject(err);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
},
|
|
112
|
-
|
|
113
97
|
dismiss: (): Promise<void> => {
|
|
114
98
|
return new Promise(async (resolve, reject) => {
|
|
115
99
|
try {
|
|
@@ -121,10 +105,10 @@ const RNPrimer = {
|
|
|
121
105
|
});
|
|
122
106
|
},
|
|
123
107
|
|
|
124
|
-
|
|
108
|
+
cleanUp: (): Promise<void> => {
|
|
125
109
|
return new Promise(async (resolve, reject) => {
|
|
126
110
|
try {
|
|
127
|
-
await NativePrimer.
|
|
111
|
+
await NativePrimer.cleanUp();
|
|
128
112
|
resolve();
|
|
129
113
|
} catch (err) {
|
|
130
114
|
reject(err);
|
package/src/index.tsx
CHANGED
|
@@ -5,54 +5,68 @@ export {
|
|
|
5
5
|
PrimerSettings
|
|
6
6
|
} from './models/PrimerSettings';
|
|
7
7
|
export {
|
|
8
|
-
|
|
8
|
+
PrimerInputElementType as InputElementType
|
|
9
|
+
} from './models/PrimerInputElementType';
|
|
10
|
+
export {
|
|
11
|
+
PrimerSessionIntent as SessionIntent
|
|
9
12
|
} from './models/PrimerSessionIntent';
|
|
10
13
|
export {
|
|
11
|
-
PrimerPaymentCreationHandler,
|
|
12
|
-
PrimerTokenizationHandler,
|
|
13
|
-
PrimerResumeHandler,
|
|
14
|
-
PrimerErrorHandler,
|
|
15
|
-
} from './models/
|
|
14
|
+
PrimerPaymentCreationHandler as PaymentCreationHandler,
|
|
15
|
+
PrimerTokenizationHandler as TokenizationHandler,
|
|
16
|
+
PrimerResumeHandler as ResumeHandler,
|
|
17
|
+
PrimerErrorHandler as ErrorHandler,
|
|
18
|
+
} from './models/PrimerHandlers';
|
|
16
19
|
export { PrimerPaymentMethodTokenData } from './models/PrimerPaymentMethodTokenData';
|
|
17
20
|
export {
|
|
18
|
-
PrimerClientSession,
|
|
19
|
-
PrimerOrder,
|
|
20
|
-
PrimerLineItem,
|
|
21
|
-
PrimerCustomer,
|
|
22
|
-
PrimerAddress,
|
|
21
|
+
PrimerClientSession as ClientSession,
|
|
22
|
+
PrimerOrder as Order,
|
|
23
|
+
PrimerLineItem as LineItem,
|
|
24
|
+
PrimerCustomer as Customer,
|
|
25
|
+
PrimerAddress as Address,
|
|
23
26
|
} from './models/PrimerClientSession';
|
|
24
27
|
export {
|
|
25
|
-
PrimerRawData,
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
PrimerRawRetailerData
|
|
28
|
+
PrimerRawData as RawData,
|
|
29
|
+
PrimerCardData as CardData,
|
|
30
|
+
PrimerBancontactCardData as BancontactCardData,
|
|
31
|
+
PrimerPhoneNumberData as PhoneNumberData,
|
|
32
|
+
PrimerRetailerData as RetailerData
|
|
31
33
|
} from './models/PrimerRawData';
|
|
32
34
|
export {
|
|
33
|
-
PrimerCheckoutAdditionalInfo,
|
|
34
|
-
MultibancoCheckoutAdditionalInfo
|
|
35
|
-
PrimerCheckoutVoucherAdditionalInfo,
|
|
36
|
-
XenditCheckoutVoucherAdditionalInfo,
|
|
37
|
-
PrimerCheckoutQRCodeInfo,
|
|
38
|
-
PromptPayCheckoutAdditionalInfo
|
|
35
|
+
PrimerCheckoutAdditionalInfo as CheckoutAdditionalInfo,
|
|
36
|
+
MultibancoCheckoutAdditionalInfo
|
|
39
37
|
} from './models/PrimerCheckoutAdditionalInfo';
|
|
40
38
|
export {
|
|
41
39
|
RetailOutletsRetail
|
|
42
40
|
} from './models/RetailOutletsRetail';
|
|
43
41
|
export {
|
|
44
|
-
PrimerCheckoutData,
|
|
45
|
-
PrimerCheckoutDataPayment,
|
|
42
|
+
PrimerCheckoutData as CheckoutData,
|
|
43
|
+
PrimerCheckoutDataPayment as CheckoutDataPayment,
|
|
46
44
|
} from './models/PrimerCheckoutData';
|
|
47
45
|
export {
|
|
48
|
-
PrimerCheckoutPaymentMethodData
|
|
46
|
+
PrimerCheckoutPaymentMethodData as CheckoutPaymentMethodData
|
|
49
47
|
} from './models/PrimerCheckoutPaymentMethodData';
|
|
50
48
|
export {
|
|
51
49
|
PrimerError
|
|
52
50
|
} from './models/PrimerError';
|
|
51
|
+
export type {
|
|
52
|
+
IPrimerAsset as Asset
|
|
53
|
+
} from './models/PrimerAsset';
|
|
53
54
|
export {
|
|
54
55
|
PrimerHeadlessUniversalCheckout as HeadlessUniversalCheckout
|
|
55
|
-
} from './
|
|
56
|
+
} from './HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout';
|
|
57
|
+
export type {
|
|
58
|
+
IPrimerHeadlessUniversalCheckoutPaymentMethod as PaymentMethod
|
|
59
|
+
} from './models/PrimerHeadlessUniversalCheckoutPaymentMethod';
|
|
60
|
+
|
|
61
|
+
import PrimerHeadlessUniversalCheckoutAssetsManager from './HeadlessUniversalCheckout/Managers/AssetsManager';
|
|
62
|
+
export {
|
|
63
|
+
PrimerHeadlessUniversalCheckoutAssetsManager as AssetsManager
|
|
64
|
+
}
|
|
65
|
+
import PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager from './HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager';
|
|
66
|
+
export {
|
|
67
|
+
PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager as NativeUIManager
|
|
68
|
+
}
|
|
69
|
+
import PrimerHeadlessUniversalCheckoutRawDataManager from './HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager';
|
|
56
70
|
export {
|
|
57
|
-
PrimerHeadlessUniversalCheckoutRawDataManager as
|
|
58
|
-
}
|
|
71
|
+
PrimerHeadlessUniversalCheckoutRawDataManager as RawDataManager
|
|
72
|
+
}
|
|
@@ -10,11 +10,13 @@ export class PrimerError extends Error {
|
|
|
10
10
|
errorId: string;
|
|
11
11
|
description: string;
|
|
12
12
|
recoverySuggestion?: string;
|
|
13
|
+
diagnosticsId?: string;
|
|
13
14
|
|
|
14
|
-
constructor(errorId: string, description: string, recoverySuggestion: string | undefined) {
|
|
15
|
+
constructor(errorId: string, description: string, recoverySuggestion: string | undefined, diagnosticsId: string | undefined) {
|
|
15
16
|
super(description);
|
|
16
17
|
this.errorId = errorId;
|
|
17
18
|
this.description = description;
|
|
18
19
|
this.recoverySuggestion = recoverySuggestion;
|
|
20
|
+
this.diagnosticsId = diagnosticsId;
|
|
19
21
|
}
|
|
20
22
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface PrimerPaymentCreationHandler {
|
|
2
|
+
abortPaymentCreation(errorMessage: string | null): void;
|
|
3
|
+
continuePaymentCreation(): void;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export interface PrimerTokenizationHandler {
|
|
7
|
+
handleSuccess(): void;
|
|
8
|
+
handleFailure(errorMessage: string | null): void;
|
|
9
|
+
continueWithNewClientToken(newClientToken: string): void;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface PrimerResumeHandler {
|
|
13
|
+
handleSuccess(): void;
|
|
14
|
+
handleFailure(errorMessage: string | null): void;
|
|
15
|
+
continueWithNewClientToken(newClientToken: string): void;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface PrimerHeadlessUniversalCheckoutResumeHandler {
|
|
19
|
+
continueWithNewClientToken(newClientToken: string): void;
|
|
20
|
+
complete(): void;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface PrimerErrorHandler {
|
|
24
|
+
showErrorMessage(errorMessage: string | null): void;
|
|
25
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface PrimerImplementedRNCallbacks {
|
|
2
|
+
onAvailablePaymentMethodsLoad: boolean;
|
|
3
|
+
onTokenizationStart: boolean;
|
|
4
|
+
onTokenizationSuccess: boolean;
|
|
5
|
+
|
|
6
|
+
onCheckoutResume: boolean;
|
|
7
|
+
onCheckoutPending: boolean;
|
|
8
|
+
onCheckoutAdditionalInfo: boolean;
|
|
9
|
+
|
|
10
|
+
onError: boolean;
|
|
11
|
+
onCheckoutComplete: boolean;
|
|
12
|
+
onBeforeClientSessionUpdate: boolean;
|
|
13
|
+
|
|
14
|
+
onClientSessionUpdate: boolean;
|
|
15
|
+
onBeforePaymentCreate: boolean;
|
|
16
|
+
onPreparationStart: boolean;
|
|
17
|
+
|
|
18
|
+
onPaymentMethodShow: boolean;
|
|
19
|
+
onDismiss: boolean;
|
|
20
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export enum PrimerInputElementType {
|
|
2
|
+
CARD_NUMBER = "CARD_NUMBER",
|
|
3
|
+
EXPIRY_DATE = "EXPIRY_DATE",
|
|
4
|
+
CVV = "CVV",
|
|
5
|
+
CARDHOLDER_NAME = "CARDHOLDER_NAME",
|
|
6
|
+
OTP = "OTP",
|
|
7
|
+
POSTAL_CODE = "POSTAL_CODE",
|
|
8
|
+
PHONE_NUMBER = "PHONE_NUMBER",
|
|
9
|
+
RETAILER = "RETAILER",
|
|
10
|
+
UNKNOWN = "UNKNOWN"
|
|
11
|
+
}
|
|
@@ -1,36 +1,9 @@
|
|
|
1
|
-
import type { PrimerSessionIntent } from "./PrimerSessionIntent";
|
|
2
1
|
import type { PrimerSettings } from "./PrimerSettings";
|
|
3
2
|
|
|
4
3
|
export interface IPrimer {
|
|
5
4
|
configure(settings: PrimerSettings): Promise<void>;
|
|
6
5
|
showUniversalCheckout(clientToken: string): Promise<void>;
|
|
7
6
|
showVaultManager(clientToken: string): Promise<void>;
|
|
8
|
-
showPaymentMethod(
|
|
9
|
-
paymentMethodType: string,
|
|
10
|
-
intent: PrimerSessionIntent,
|
|
11
|
-
clientToken: string
|
|
12
|
-
): Promise<void>
|
|
13
7
|
dismiss(): void;
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export interface PrimerPaymentCreationHandler {
|
|
18
|
-
abortPaymentCreation(errorMessage: string | null): void;
|
|
19
|
-
continuePaymentCreation(): void;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export interface PrimerTokenizationHandler {
|
|
23
|
-
handleSuccess(): void;
|
|
24
|
-
handleFailure(errorMessage: string | null): void;
|
|
25
|
-
continueWithNewClientToken(newClientToken: string): void;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export interface PrimerResumeHandler {
|
|
29
|
-
handleSuccess(): void;
|
|
30
|
-
handleFailure(errorMessage: string | null): void;
|
|
31
|
-
continueWithNewClientToken(newClientToken: string): void;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export interface PrimerErrorHandler {
|
|
35
|
-
showErrorMessage(errorMessage: string | null): void;
|
|
8
|
+
cleanUp(): void;
|
|
36
9
|
}
|
|
@@ -1,26 +1,22 @@
|
|
|
1
1
|
export interface PrimerRawData {}
|
|
2
2
|
|
|
3
|
-
export interface
|
|
3
|
+
export interface PrimerCardData extends PrimerRawData {
|
|
4
4
|
cardNumber: string;
|
|
5
|
-
|
|
6
|
-
expiryYear: string;
|
|
5
|
+
expiryDate: string;
|
|
7
6
|
cvv: string;
|
|
8
7
|
cardholderName?: string;
|
|
9
8
|
}
|
|
10
9
|
|
|
11
|
-
export interface
|
|
10
|
+
export interface PrimerPhoneNumberData extends PrimerRawData {
|
|
12
11
|
phoneNumber: string;
|
|
13
12
|
}
|
|
14
13
|
|
|
15
|
-
export interface
|
|
16
|
-
|
|
17
|
-
export interface PrimerBancontactCardRedirectData extends PrimerRawCardRedirectData {
|
|
14
|
+
export interface PrimerBancontactCardData extends PrimerRawData {
|
|
18
15
|
cardNumber: string;
|
|
19
|
-
|
|
20
|
-
expiryYear: string;
|
|
16
|
+
expiryDate: string;
|
|
21
17
|
cardholderName: string;
|
|
22
18
|
}
|
|
23
19
|
|
|
24
|
-
export interface
|
|
20
|
+
export interface PrimerRetailerData extends PrimerRawData {
|
|
25
21
|
id: string;
|
|
26
22
|
}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
PrimerErrorHandler,
|
|
3
|
-
PrimerPaymentCreationHandler,
|
|
4
|
-
PrimerResumeHandler,
|
|
5
|
-
PrimerTokenizationHandler
|
|
6
|
-
} from "./PrimerInterfaces";
|
|
1
|
+
|
|
7
2
|
import type { PrimerCheckoutData } from "./PrimerCheckoutData";
|
|
8
3
|
import type { PrimerCheckoutAdditionalInfo } from "./PrimerCheckoutAdditionalInfo";
|
|
9
4
|
import type { PrimerCheckoutPaymentMethodData } from "./PrimerCheckoutPaymentMethodData";
|
|
@@ -11,6 +6,13 @@ import type { PrimerClientSession } from "./PrimerClientSession";
|
|
|
11
6
|
import type { PrimerPaymentMethodTokenData } from "./PrimerPaymentMethodTokenData";
|
|
12
7
|
import type { PrimerError } from "./PrimerError";
|
|
13
8
|
import type { IPrimerTheme } from "./PrimerTheme";
|
|
9
|
+
import type {
|
|
10
|
+
PrimerPaymentCreationHandler,
|
|
11
|
+
PrimerTokenizationHandler,
|
|
12
|
+
PrimerResumeHandler,
|
|
13
|
+
PrimerErrorHandler,
|
|
14
|
+
PrimerHeadlessUniversalCheckoutResumeHandler
|
|
15
|
+
} from "./PrimerHandlers";
|
|
14
16
|
|
|
15
17
|
export type PrimerSettings = IPrimerSettings;
|
|
16
18
|
|
|
@@ -21,26 +23,38 @@ interface IPrimerSettings {
|
|
|
21
23
|
uiOptions?: IPrimerUIOptions;
|
|
22
24
|
debugOptions?: IPrimerDebugOptions;
|
|
23
25
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
26
|
+
primerCallbacks?: {
|
|
27
|
+
onBeforeClientSessionUpdate?: () => void;
|
|
28
|
+
onClientSessionUpdate?: (clientSession: PrimerClientSession) => void;
|
|
29
|
+
onBeforePaymentCreate?: (checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData, handler: PrimerPaymentCreationHandler) => void;
|
|
30
|
+
onCheckoutComplete?: (checkoutData: PrimerCheckoutData) => void;
|
|
31
|
+
onTokenizeSuccess?: (paymentMethodTokenData: PrimerPaymentMethodTokenData, handler: PrimerTokenizationHandler) => void;
|
|
32
|
+
onResumeSuccess?: (resumeToken: string, handler: PrimerResumeHandler) => void;
|
|
33
|
+
onResumePending?: (additionalInfo: PrimerCheckoutAdditionalInfo) => void;
|
|
34
|
+
onCheckoutReceivedAdditionalInfo?: (additionalInfo: PrimerCheckoutAdditionalInfo) => void;
|
|
35
|
+
onError?: (error: PrimerError, checkoutData: PrimerCheckoutData | null, handler: PrimerErrorHandler | undefined) => void;
|
|
36
|
+
onDismiss?: () => void;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
headlessUniversalCheckoutCallbacks?: {
|
|
40
|
+
onAvailablePaymentMethodsLoad?: (availablePaymentMethods: any[]) => void;
|
|
41
|
+
onTokenizationStart?: (paymentMethodType: string) => void;
|
|
42
|
+
onTokenizationSuccess?: (paymentMethodTokenData: PrimerPaymentMethodTokenData, handler: PrimerHeadlessUniversalCheckoutResumeHandler) => void;
|
|
43
|
+
|
|
44
|
+
onCheckoutResume?: (resumeToken: string, handler: PrimerHeadlessUniversalCheckoutResumeHandler) => void;
|
|
45
|
+
onCheckoutPending?: (additionalInfo: PrimerCheckoutAdditionalInfo) => void;
|
|
46
|
+
onCheckoutAdditionalInfo?: (additionalInfo: PrimerCheckoutAdditionalInfo) => void;
|
|
47
|
+
|
|
48
|
+
onError?: (error: PrimerError, checkoutData: PrimerCheckoutData | null) => void;
|
|
49
|
+
onCheckoutComplete?: (checkoutData: PrimerCheckoutData) => void;
|
|
50
|
+
onBeforeClientSessionUpdate?: () => void;
|
|
51
|
+
|
|
52
|
+
onClientSessionUpdate?: (clientSession: PrimerClientSession) => void;
|
|
53
|
+
onBeforePaymentCreate?: (checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData, handler: PrimerPaymentCreationHandler) => void;
|
|
54
|
+
onPreparationStart?: (paymentMethodType: string) => void;
|
|
55
|
+
|
|
56
|
+
onPaymentMethodShow?: (paymentMethodType: string) => void;
|
|
57
|
+
}
|
|
44
58
|
}
|
|
45
59
|
|
|
46
60
|
//----------------------------------------
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
package com.primerioreactnative.huc.datamodels.manager.raw.cardRedirect
|
|
2
|
-
|
|
3
|
-
import io.primer.android.components.domain.core.models.bancontact.PrimerRawBancontactCardData
|
|
4
|
-
import kotlinx.serialization.Serializable
|
|
5
|
-
|
|
6
|
-
@Serializable
|
|
7
|
-
internal data class PrimerRNRawBancontactCardData(
|
|
8
|
-
val cardNumber: String,
|
|
9
|
-
val expiryMonth: String,
|
|
10
|
-
val expiryYear: String,
|
|
11
|
-
val cardholderName: String
|
|
12
|
-
) {
|
|
13
|
-
fun toPrimerRawBancontactCardData() =
|
|
14
|
-
PrimerRawBancontactCardData(
|
|
15
|
-
cardNumber,
|
|
16
|
-
expiryMonth,
|
|
17
|
-
expiryYear,
|
|
18
|
-
cardholderName
|
|
19
|
-
)
|
|
20
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
package com.primerioreactnative.huc.datamodels.manager.raw.phoneNumber
|
|
2
|
-
|
|
3
|
-
import io.primer.android.components.domain.core.models.phoneNumber.PrimerRawPhoneNumberData
|
|
4
|
-
import kotlinx.serialization.Serializable
|
|
5
|
-
|
|
6
|
-
@Serializable
|
|
7
|
-
internal data class PrimerRNRawPhoneNumberData(
|
|
8
|
-
val phoneNumber: String? = null,
|
|
9
|
-
) {
|
|
10
|
-
fun toPrimerRawPhoneNumberData() =
|
|
11
|
-
PrimerRawPhoneNumberData(
|
|
12
|
-
phoneNumber.orEmpty()
|
|
13
|
-
)
|
|
14
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package com.primerioreactnative.huc.datamodels.manager.raw.retailOutlets
|
|
2
|
-
|
|
3
|
-
import io.primer.android.components.domain.core.models.retailOutlet.PrimerRawRetailerData
|
|
4
|
-
import kotlinx.serialization.Serializable
|
|
5
|
-
|
|
6
|
-
@Serializable
|
|
7
|
-
internal data class PrimerRNRawRetailOutletData(
|
|
8
|
-
val id: String
|
|
9
|
-
) {
|
|
10
|
-
|
|
11
|
-
fun toPrimerRawRetailOutletData() = PrimerRawRetailerData(id)
|
|
12
|
-
}
|