@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
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
//
|
|
2
|
+
// RNTPrimer.m
|
|
3
|
+
// primer-io-react-native
|
|
4
|
+
//
|
|
5
|
+
// Created by Evangelos on 15/3/22.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <React/RCTBridgeModule.h>
|
|
9
|
+
#import <React/RCTEventEmitter.h>
|
|
10
|
+
|
|
11
|
+
@interface RCT_EXTERN_MODULE(NativePrimer, RCTEventEmitter)
|
|
12
|
+
|
|
13
|
+
// MARK: - PRIMER SDK API
|
|
14
|
+
|
|
15
|
+
RCT_EXTERN_METHOD(configure:(NSString *)settingsStr
|
|
16
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
17
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
18
|
+
|
|
19
|
+
RCT_EXTERN_METHOD(showUniversalCheckoutWithClientToken:(NSString *)clientToken
|
|
20
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
21
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
22
|
+
|
|
23
|
+
RCT_EXTERN_METHOD(showVaultManagerWithClientToken:(NSString *)clientToken
|
|
24
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
25
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
26
|
+
|
|
27
|
+
RCT_EXTERN_METHOD(dismiss)
|
|
28
|
+
|
|
29
|
+
RCT_EXTERN_METHOD(cleanUp)
|
|
30
|
+
|
|
31
|
+
// MARK: - HELPERS
|
|
32
|
+
|
|
33
|
+
RCT_EXTERN_METHOD(setImplementedRNCallbacks:(NSString *)implementedRNCallbacksStr
|
|
34
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
35
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
36
|
+
|
|
37
|
+
// MARK: - DECISION HANDLERS
|
|
38
|
+
|
|
39
|
+
// MARK: Tokenization Handlers
|
|
40
|
+
|
|
41
|
+
RCT_EXTERN_METHOD(handleTokenizationNewClientToken:(NSString *)newClientToken
|
|
42
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
43
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
44
|
+
|
|
45
|
+
RCT_EXTERN_METHOD(handleTokenizationSuccess:(RCTPromiseResolveBlock)resolver
|
|
46
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
47
|
+
|
|
48
|
+
RCT_EXTERN_METHOD(handleTokenizationFailure:(NSString *)errorMessage
|
|
49
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
50
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
51
|
+
|
|
52
|
+
// MARK: Resume Handlers
|
|
53
|
+
|
|
54
|
+
RCT_EXTERN_METHOD(handleResumeWithNewClientToken:(NSString *)newClientToken
|
|
55
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
56
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
57
|
+
|
|
58
|
+
RCT_EXTERN_METHOD(handleResumeSuccess:(RCTPromiseResolveBlock)resolver
|
|
59
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
60
|
+
|
|
61
|
+
RCT_EXTERN_METHOD(handleResumeFailure:(NSString *)errorMessage
|
|
62
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
63
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
64
|
+
|
|
65
|
+
// MARK: Payment Creation Handlers
|
|
66
|
+
|
|
67
|
+
RCT_EXTERN_METHOD(handlePaymentCreationAbort:(NSString *)errorMessage
|
|
68
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
69
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
70
|
+
|
|
71
|
+
RCT_EXTERN_METHOD(handlePaymentCreationContinue:(RCTPromiseResolveBlock)resolver
|
|
72
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
73
|
+
|
|
74
|
+
// MARK: Error Handler
|
|
75
|
+
|
|
76
|
+
RCT_EXTERN_METHOD(showErrorMessage:(NSString *)errorMessage
|
|
77
|
+
resolver:(RCTPromiseResolveBlock)resolver
|
|
78
|
+
rejecter:(RCTPromiseRejectBlock)rejecter)
|
|
79
|
+
|
|
80
|
+
@end
|
|
@@ -125,37 +125,13 @@ class RNTPrimer: RCTEventEmitter {
|
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
@objc
|
|
129
|
-
public func showPaymentMethod(_ paymentMethodTypeStr: String, intent: String, clientToken: String, resolver: @escaping RCTPromiseResolveBlock, rejecter: @escaping RCTPromiseRejectBlock) {
|
|
130
|
-
DispatchQueue.main.async {
|
|
131
|
-
do {
|
|
132
|
-
guard let primerIntent = PrimerSessionIntent(rawValue: intent) else {
|
|
133
|
-
let err = NSError(domain: "native-bridge", code: 0, userInfo: [NSLocalizedDescriptionKey: "Intent \(intent) is not valid."])
|
|
134
|
-
throw err
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
PrimerSDK.Primer.shared.showPaymentMethod(paymentMethodTypeStr, withIntent: primerIntent, andClientToken: clientToken) { err in
|
|
138
|
-
DispatchQueue.main.async {
|
|
139
|
-
if let err = err {
|
|
140
|
-
rejecter(err.rnError["errorId"]!, err.rnError["description"], err)
|
|
141
|
-
} else {
|
|
142
|
-
resolver(nil)
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
} catch {
|
|
147
|
-
rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
|
|
152
128
|
@objc
|
|
153
129
|
public func dismiss() {
|
|
154
130
|
Primer.shared.dismiss()
|
|
155
131
|
}
|
|
156
132
|
|
|
157
133
|
@objc
|
|
158
|
-
public func
|
|
134
|
+
public func cleanUp() {
|
|
159
135
|
Primer.shared.dismiss()
|
|
160
136
|
}
|
|
161
137
|
|
|
@@ -253,7 +229,7 @@ class RNTPrimer: RCTEventEmitter {
|
|
|
253
229
|
// MARK: Helpers
|
|
254
230
|
|
|
255
231
|
private func configure(settingsStr: String? = nil) throws {
|
|
256
|
-
try PrimerSDK.Primer.shared.configure(settings: PrimerSettings
|
|
232
|
+
try PrimerSDK.Primer.shared.configure(settings: PrimerSettings(settingsStr: settingsStr), delegate: self)
|
|
257
233
|
}
|
|
258
234
|
|
|
259
235
|
private func detectImplemetedCallbacks() {
|
|
@@ -265,9 +241,13 @@ class RNTPrimer: RCTEventEmitter {
|
|
|
265
241
|
DispatchQueue.main.async {
|
|
266
242
|
do {
|
|
267
243
|
guard let implementedRNCallbacksData = implementedRNCallbacksStr.data(using: .utf8) else {
|
|
268
|
-
let err =
|
|
244
|
+
let err = RNTNativeError(
|
|
245
|
+
errorId: "native-ios",
|
|
246
|
+
errorDescription: "Failed to convert string to data",
|
|
247
|
+
recoverySuggestion: nil)
|
|
269
248
|
throw err
|
|
270
249
|
}
|
|
250
|
+
|
|
271
251
|
self.implementedRNCallbacks = try JSONDecoder().decode(ImplementedRNCallbacks.self, from: implementedRNCallbacksData)
|
|
272
252
|
resolver(nil)
|
|
273
253
|
} catch {
|
|
@@ -312,7 +292,10 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
312
292
|
self.handleRNBridgeError(error, checkoutData: data, stopOnDebug: true)
|
|
313
293
|
}
|
|
314
294
|
} else {
|
|
315
|
-
let err =
|
|
295
|
+
let err = RNTNativeError(
|
|
296
|
+
errorId: "native-ios",
|
|
297
|
+
errorDescription: "Callback [onCheckoutComplete] should be implemented.",
|
|
298
|
+
recoverySuggestion: nil)
|
|
316
299
|
self.handleRNBridgeError(err, checkoutData: data, stopOnDebug: false)
|
|
317
300
|
}
|
|
318
301
|
}
|
|
@@ -320,17 +303,20 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
320
303
|
|
|
321
304
|
func primerDidEnterResumePendingWithPaymentAdditionalInfo(_ additionalInfo: PrimerCheckoutAdditionalInfo?) {
|
|
322
305
|
DispatchQueue.main.async {
|
|
323
|
-
if self.implementedRNCallbacks?.
|
|
306
|
+
if self.implementedRNCallbacks?.isOnCheckoutResumeImplemented == true {
|
|
324
307
|
do {
|
|
325
308
|
let checkoutAdditionalInfo = try JSONEncoder().encode(additionalInfo)
|
|
326
309
|
let checkoutAdditionalInfoJson = try JSONSerialization.jsonObject(with: checkoutAdditionalInfo, options: .allowFragments)
|
|
327
|
-
self.sendEvent(withName: PrimerHeadlessUniversalCheckoutEvents.
|
|
310
|
+
self.sendEvent(withName: PrimerHeadlessUniversalCheckoutEvents.onCheckoutPending.stringValue, body: checkoutAdditionalInfoJson)
|
|
328
311
|
} catch {
|
|
329
312
|
let checkoutData = PrimerCheckoutData(payment: nil, additionalInfo: additionalInfo)
|
|
330
313
|
self.handleRNBridgeError(error, checkoutData: checkoutData, stopOnDebug: true)
|
|
331
314
|
}
|
|
332
315
|
} else {
|
|
333
|
-
let err =
|
|
316
|
+
let err = RNTNativeError(
|
|
317
|
+
errorId: "native-ios",
|
|
318
|
+
errorDescription: "Callback [onResumePending] should be implemented.",
|
|
319
|
+
recoverySuggestion: nil)
|
|
334
320
|
let checkoutData = PrimerCheckoutData(payment: nil, additionalInfo: additionalInfo)
|
|
335
321
|
self.handleRNBridgeError(err, checkoutData: checkoutData, stopOnDebug: false)
|
|
336
322
|
}
|
|
@@ -394,7 +380,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
394
380
|
}
|
|
395
381
|
|
|
396
382
|
func primerDidTokenizePaymentMethod(_ paymentMethodTokenData: PrimerPaymentMethodTokenData, decisionHandler: @escaping (PrimerResumeDecision) -> Void) {
|
|
397
|
-
if self.implementedRNCallbacks?.
|
|
383
|
+
if self.implementedRNCallbacks?.isOnTokenizationSuccessImplemented == true {
|
|
398
384
|
self.primerDidTokenizePaymentMethodDecisionHandler = { (newClientToken, errorMessage) in
|
|
399
385
|
DispatchQueue.main.async {
|
|
400
386
|
if let errorMessage = errorMessage {
|
|
@@ -424,7 +410,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
424
410
|
}
|
|
425
411
|
|
|
426
412
|
func primerDidResumeWith(_ resumeToken: String, decisionHandler: @escaping (PrimerResumeDecision) -> Void) {
|
|
427
|
-
if self.implementedRNCallbacks?.
|
|
413
|
+
if self.implementedRNCallbacks?.isOnCheckoutResumeImplemented == true {
|
|
428
414
|
self.primerDidResumeWithDecisionHandler = { (resumeToken, errorMessage) in
|
|
429
415
|
DispatchQueue.main.async {
|
|
430
416
|
if let errorMessage = errorMessage {
|
|
@@ -469,7 +455,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
469
455
|
}
|
|
470
456
|
|
|
471
457
|
// Send the error message to the RN bridge.
|
|
472
|
-
self.handleRNBridgeError(error, checkoutData:
|
|
458
|
+
self.handleRNBridgeError(error, checkoutData: data, stopOnDebug: false)
|
|
473
459
|
|
|
474
460
|
} else {
|
|
475
461
|
// RN dev hasn't opted in on listening SDK dismiss.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
const {
|
|
9
|
+
RNTPrimerHeadlessUniversalCheckoutAssetsManager
|
|
10
|
+
} = _reactNative.NativeModules;
|
|
11
|
+
class PrimerHeadlessUniversalCheckoutAssetsManager {
|
|
12
|
+
///////////////////////////////////////////
|
|
13
|
+
// Init
|
|
14
|
+
///////////////////////////////////////////
|
|
15
|
+
constructor() {}
|
|
16
|
+
|
|
17
|
+
///////////////////////////////////////////
|
|
18
|
+
// Native API
|
|
19
|
+
///////////////////////////////////////////
|
|
20
|
+
|
|
21
|
+
async getCardNetworkImageURL(cardNetwork) {
|
|
22
|
+
return new Promise(async (resolve, reject) => {
|
|
23
|
+
try {
|
|
24
|
+
const data = await RNTPrimerHeadlessUniversalCheckoutAssetsManager.getCardNetworkImage(cardNetwork);
|
|
25
|
+
resolve(data.cardNetworkImageURL);
|
|
26
|
+
} catch (err) {
|
|
27
|
+
console.error(err);
|
|
28
|
+
reject(err);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
async getPaymentMethodAsset(paymentMethodType) {
|
|
33
|
+
return new Promise(async (resolve, reject) => {
|
|
34
|
+
try {
|
|
35
|
+
const data = await RNTPrimerHeadlessUniversalCheckoutAssetsManager.getPaymentMethodAsset(paymentMethodType);
|
|
36
|
+
const paymentMethodAsset = data.paymentMethodAsset;
|
|
37
|
+
resolve(paymentMethodAsset);
|
|
38
|
+
} catch (err) {
|
|
39
|
+
console.error(err);
|
|
40
|
+
reject(err);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
async getPaymentMethodAssets() {
|
|
45
|
+
return new Promise(async (resolve, reject) => {
|
|
46
|
+
try {
|
|
47
|
+
const data = await RNTPrimerHeadlessUniversalCheckoutAssetsManager.getPaymentMethodAssets();
|
|
48
|
+
const paymentMethodAssets = data.paymentMethodAssets;
|
|
49
|
+
resolve(paymentMethodAssets);
|
|
50
|
+
} catch (err) {
|
|
51
|
+
console.error(err);
|
|
52
|
+
reject(err);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
var _default = PrimerHeadlessUniversalCheckoutAssetsManager;
|
|
58
|
+
exports.default = _default;
|
|
59
|
+
//# sourceMappingURL=AssetsManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["RNTPrimerHeadlessUniversalCheckoutAssetsManager","NativeModules","PrimerHeadlessUniversalCheckoutAssetsManager","constructor","getCardNetworkImageURL","cardNetwork","Promise","resolve","reject","data","getCardNetworkImage","cardNetworkImageURL","err","console","error","getPaymentMethodAsset","paymentMethodType","paymentMethodAsset","getPaymentMethodAssets","paymentMethodAssets"],"sourceRoot":"../../src","sources":["AssetsManager.ts"],"mappings":";;;;;;AACA;AAEA,MAAM;EAAEA;AAAgD,CAAC,GAAGC,0BAAa;AAEzE,MAAMC,4CAA4C,CAAC;EAE/C;EACA;EACA;EACAC,WAAW,GAAG,CAAC;;EAEf;EACA;EACA;;EAEA,MAAMC,sBAAsB,CAACC,WAAmB,EAAmB;IAC/D,OAAO,IAAIC,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;MAC1C,IAAI;QACA,MAAMC,IAAI,GAAG,MAAMT,+CAA+C,CAACU,mBAAmB,CAACL,WAAW,CAAC;QACnGE,OAAO,CAACE,IAAI,CAACE,mBAAmB,CAAC;MACrC,CAAC,CAAC,OAAOC,GAAG,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,GAAG,CAAC;QAClBJ,MAAM,CAACI,GAAG,CAAC;MACf;IACJ,CAAC,CAAC;EACN;EAEA,MAAMG,qBAAqB,CAACC,iBAAyB,EAAkB;IACnE,OAAO,IAAIV,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;MAC1C,IAAI;QACA,MAAMC,IAAI,GAAG,MAAMT,+CAA+C,CAACe,qBAAqB,CAACC,iBAAiB,CAAC;QAC3G,MAAMC,kBAAyB,GAAGR,IAAI,CAACQ,kBAAkB;QACzDV,OAAO,CAACU,kBAAkB,CAAC;MAC/B,CAAC,CAAC,OAAOL,GAAG,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,GAAG,CAAC;QAClBJ,MAAM,CAACI,GAAG,CAAC;MACf;IACJ,CAAC,CAAC;EACN;EAEA,MAAMM,sBAAsB,GAAqB;IAC7C,OAAO,IAAIZ,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;MAC1C,IAAI;QACA,MAAMC,IAAI,GAAG,MAAMT,+CAA+C,CAACkB,sBAAsB,EAAE;QAC3F,MAAMC,mBAA4B,GAAGV,IAAI,CAACU,mBAAmB;QAC7DZ,OAAO,CAACY,mBAAmB,CAAC;MAChC,CAAC,CAAC,OAAOP,GAAG,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,GAAG,CAAC;QAClBJ,MAAM,CAACI,GAAG,CAAC;MACf;IACJ,CAAC,CAAC;EACN;AACJ;AAAC,eAEcV,4CAA4C;AAAA"}
|
package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
const {
|
|
9
|
+
RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager
|
|
10
|
+
} = _reactNative.NativeModules;
|
|
11
|
+
class PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager {
|
|
12
|
+
///////////////////////////////////////////
|
|
13
|
+
// Init
|
|
14
|
+
///////////////////////////////////////////
|
|
15
|
+
constructor() {}
|
|
16
|
+
|
|
17
|
+
///////////////////////////////////////////
|
|
18
|
+
// Native API
|
|
19
|
+
///////////////////////////////////////////
|
|
20
|
+
|
|
21
|
+
async configure(paymentMethodType) {
|
|
22
|
+
try {
|
|
23
|
+
await RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager.configure(paymentMethodType);
|
|
24
|
+
} catch (err) {
|
|
25
|
+
console.error(err);
|
|
26
|
+
throw err;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async showPaymentMethod(intent) {
|
|
30
|
+
return RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager.showPaymentMethod(intent);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
var _default = PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager;
|
|
34
|
+
exports.default = _default;
|
|
35
|
+
//# sourceMappingURL=NativeUIManager.js.map
|
package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager","NativeModules","PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager","constructor","configure","paymentMethodType","err","console","error","showPaymentMethod","intent"],"sourceRoot":"../../src","sources":["NativeUIManager.ts"],"mappings":";;;;;;AAAA;AAGA,MAAM;EAAEA;AAAuD,CAAC,GAAGC,0BAAa;AAEhF,MAAMC,2DAA2D,CAAC;EAE9D;EACA;EACA;EACAC,WAAW,GAAG,CAAC;;EAEf;EACA;EACA;;EAEA,MAAMC,SAAS,CAACC,iBAAyB,EAAiB;IACtD,IAAI;MACA,MAAML,sDAAsD,CAACI,SAAS,CAACC,iBAAiB,CAAC;IAC7F,CAAC,CAAC,OAAOC,GAAG,EAAE;MACVC,OAAO,CAACC,KAAK,CAACF,GAAG,CAAC;MAClB,MAAMA,GAAG;IACb;EACJ;EAEA,MAAMG,iBAAiB,CAACC,MAA2B,EAAiB;IAChE,OAAOV,sDAAsD,CAACS,iBAAiB,CAACC,MAAM,CAAC;EAC3F;AACJ;AAAC,eAEcR,2DAA2D;AAAA"}
|
package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _PrimerError = require("../../../models/PrimerError");
|
|
9
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
|
+
const {
|
|
11
|
+
RNTPrimerHeadlessUniversalCheckoutRawDataManager
|
|
12
|
+
} = _reactNative.NativeModules;
|
|
13
|
+
const eventEmitter = new _reactNative.NativeEventEmitter(RNTPrimerHeadlessUniversalCheckoutRawDataManager);
|
|
14
|
+
const eventTypes = ['onMetadataChange', 'onValidation'];
|
|
15
|
+
class PrimerHeadlessUniversalCheckoutRawDataManager {
|
|
16
|
+
///////////////////////////////////////////
|
|
17
|
+
// Init
|
|
18
|
+
///////////////////////////////////////////
|
|
19
|
+
constructor() {
|
|
20
|
+
_defineProperty(this, "options", void 0);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
///////////////////////////////////////////
|
|
24
|
+
// API
|
|
25
|
+
///////////////////////////////////////////
|
|
26
|
+
|
|
27
|
+
async configure(options) {
|
|
28
|
+
return new Promise(async (resolve, reject) => {
|
|
29
|
+
try {
|
|
30
|
+
this.options = options;
|
|
31
|
+
await this.configureListeners();
|
|
32
|
+
const data = await RNTPrimerHeadlessUniversalCheckoutRawDataManager.configure(options.paymentMethodType);
|
|
33
|
+
if (data) {
|
|
34
|
+
resolve(data);
|
|
35
|
+
} else {
|
|
36
|
+
resolve();
|
|
37
|
+
}
|
|
38
|
+
} catch (err) {
|
|
39
|
+
reject(err);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
async configureListeners() {
|
|
44
|
+
//@ts-ignore
|
|
45
|
+
return new Promise(async (resolve, reject) => {
|
|
46
|
+
var _this$options, _this$options3;
|
|
47
|
+
if ((_this$options = this.options) !== null && _this$options !== void 0 && _this$options.onMetadataChange) {
|
|
48
|
+
this.addListener("onMetadataChange", data => {
|
|
49
|
+
var _this$options2;
|
|
50
|
+
if ((_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.onMetadataChange) {
|
|
51
|
+
this.options.onMetadataChange(data);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
if ((_this$options3 = this.options) !== null && _this$options3 !== void 0 && _this$options3.onValidation) {
|
|
56
|
+
this.addListener("onValidation", data => {
|
|
57
|
+
var _this$options4;
|
|
58
|
+
if ((_this$options4 = this.options) !== null && _this$options4 !== void 0 && _this$options4.onValidation) {
|
|
59
|
+
this.options.onValidation(data.isValid, data.errors);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
resolve();
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
async getRequiredInputElementTypes() {
|
|
67
|
+
return new Promise(async (resolve, reject) => {
|
|
68
|
+
var _this$options5;
|
|
69
|
+
if ((_this$options5 = this.options) !== null && _this$options5 !== void 0 && _this$options5.paymentMethodType) {
|
|
70
|
+
try {
|
|
71
|
+
const data = await RNTPrimerHeadlessUniversalCheckoutRawDataManager.listRequiredInputElementTypes();
|
|
72
|
+
const inputElementTypes = data.inputElementTypes;
|
|
73
|
+
resolve(inputElementTypes);
|
|
74
|
+
} catch (err) {
|
|
75
|
+
reject(err);
|
|
76
|
+
}
|
|
77
|
+
} else {
|
|
78
|
+
const err = new _PrimerError.PrimerError("manager-not-configured", "HeadlessUniversalCheckoutRawDataManager has not been configured", "Call HeadlessUniversalCheckoutRawDataManager.configure before calling this function.", undefined);
|
|
79
|
+
reject(err);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
setRawData(rawData) {
|
|
84
|
+
return new Promise(async (resolve, reject) => {
|
|
85
|
+
var _this$options6;
|
|
86
|
+
if ((_this$options6 = this.options) !== null && _this$options6 !== void 0 && _this$options6.paymentMethodType) {
|
|
87
|
+
try {
|
|
88
|
+
await RNTPrimerHeadlessUniversalCheckoutRawDataManager.setRawData(JSON.stringify(rawData));
|
|
89
|
+
resolve();
|
|
90
|
+
} catch (err) {
|
|
91
|
+
reject(err);
|
|
92
|
+
}
|
|
93
|
+
} else {
|
|
94
|
+
const err = new _PrimerError.PrimerError("manager-not-configured", "HeadlessUniversalCheckoutRawDataManager has not been configured", "Call HeadlessUniversalCheckoutRawDataManager.configure before calling this function.", undefined);
|
|
95
|
+
reject(err);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
submit() {
|
|
100
|
+
return new Promise(async (resolve, reject) => {
|
|
101
|
+
var _this$options7;
|
|
102
|
+
if ((_this$options7 = this.options) !== null && _this$options7 !== void 0 && _this$options7.paymentMethodType) {
|
|
103
|
+
try {
|
|
104
|
+
await RNTPrimerHeadlessUniversalCheckoutRawDataManager.submit();
|
|
105
|
+
resolve();
|
|
106
|
+
} catch (err) {
|
|
107
|
+
reject(err);
|
|
108
|
+
}
|
|
109
|
+
} else {
|
|
110
|
+
const err = new _PrimerError.PrimerError("manager-not-configured", "HeadlessUniversalCheckoutRawDataManager has not been configured", "Call HeadlessUniversalCheckoutRawDataManager.configure before calling this function.", undefined);
|
|
111
|
+
reject(err);
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
cleanUp() {
|
|
116
|
+
return new Promise(async (resolve, reject) => {
|
|
117
|
+
var _this$options8;
|
|
118
|
+
if ((_this$options8 = this.options) !== null && _this$options8 !== void 0 && _this$options8.paymentMethodType) {
|
|
119
|
+
try {
|
|
120
|
+
await RNTPrimerHeadlessUniversalCheckoutRawDataManager.cleanUp();
|
|
121
|
+
resolve();
|
|
122
|
+
} catch (err) {
|
|
123
|
+
reject(err);
|
|
124
|
+
}
|
|
125
|
+
} else {
|
|
126
|
+
const err = new _PrimerError.PrimerError("manager-not-configured", "HeadlessUniversalCheckoutRawDataManager has not been configured", "Call HeadlessUniversalCheckoutRawDataManager.configure before calling this function.", undefined);
|
|
127
|
+
reject(err);
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
///////////////////////////////////////////
|
|
133
|
+
// HELPERS
|
|
134
|
+
///////////////////////////////////////////
|
|
135
|
+
|
|
136
|
+
async addListener(eventType, listener) {
|
|
137
|
+
return eventEmitter.addListener(eventType, listener);
|
|
138
|
+
}
|
|
139
|
+
removeListener(eventType, listener) {
|
|
140
|
+
return eventEmitter.removeListener(eventType, listener);
|
|
141
|
+
}
|
|
142
|
+
removeAllListenersForEvent(eventType) {
|
|
143
|
+
eventEmitter.removeAllListeners(eventType);
|
|
144
|
+
}
|
|
145
|
+
removeAllListeners() {
|
|
146
|
+
eventTypes.forEach(eventType => this.removeAllListenersForEvent(eventType));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
var _default = PrimerHeadlessUniversalCheckoutRawDataManager;
|
|
150
|
+
exports.default = _default;
|
|
151
|
+
//# sourceMappingURL=RawDataManager.js.map
|
package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["RNTPrimerHeadlessUniversalCheckoutRawDataManager","NativeModules","eventEmitter","NativeEventEmitter","eventTypes","PrimerHeadlessUniversalCheckoutRawDataManager","constructor","configure","options","Promise","resolve","reject","configureListeners","data","paymentMethodType","err","onMetadataChange","addListener","onValidation","isValid","errors","getRequiredInputElementTypes","listRequiredInputElementTypes","inputElementTypes","PrimerError","undefined","setRawData","rawData","JSON","stringify","submit","cleanUp","eventType","listener","removeListener","removeAllListenersForEvent","removeAllListeners","forEach"],"sourceRoot":"../../src","sources":["RawDataManager.ts"],"mappings":"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"}
|