react-native-payengine 1.0.5 → 2.0.2
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/README.md +193 -111
- package/android/.gradle/6.1.1/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/{5.6.4 → 6.1.1}/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/6.1.1/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +2 -2
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.gradle/checksums/checksums.lock +0 -0
- package/android/.gradle/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/config.properties +2 -0
- package/android/.idea/caches/deviceStreaming.xml +318 -0
- package/android/.idea/compiler.xml +1 -1
- package/android/.idea/gradle.xml +2 -2
- package/android/.idea/kotlinc.xml +6 -0
- package/android/.idea/migrations.xml +10 -0
- package/android/.idea/misc.xml +1 -1
- package/android/build.gradle +42 -6
- package/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/android/paymentsdk-debug.aar +0 -0
- package/android/paymentsdk-release.aar +0 -0
- package/android/src/legacy/AndroidManifest.xml +4 -0
- package/android/src/main/java/com/reactnativepayengine/GooglePayModule.java +196 -0
- package/android/src/main/java/com/reactnativepayengine/PayengineModule.java +1 -5
- package/android/src/main/java/com/reactnativepayengine/PayenginePackage.java +8 -33
- package/android/src/main/java/com/reactnativepayengine/util/MetricsUtil.kt +44 -0
- package/android/src/main/java/com/reactnativepayengine/util/PaymentsUtil.java +113 -0
- package/android/src/main/java/com/reactnativepayengine/v2/RNPEFraudAnalyticsApplication.java +55 -0
- package/android/src/main/java/com/reactnativepayengine/v2/RNPayEngineNative.kt +71 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/RNPEEvents.kt +8 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/RNPEField.kt +17 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/bankaccount/RNBankAccountViewManager.kt +103 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/bankaccount/RNPEBankAccountView.kt +77 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/creditcard/RNPECreditCardView.kt +77 -0
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/creditcard/RNPECreditCardViewManager.kt +103 -0
- package/ios/PayEngineSDK.xcframework/Info.plist +44 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Frameworks/libKountDataCollector.a +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/CustomWindow.h +25 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/KDataCollector.h +106 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/KountAnalyticsViewController.h +82 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/PayEngineSDK-Swift.h +622 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/PayEngineSDK.h +20 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/UIControl+CustomControl.h +33 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/UIViewController+TouchControl.h +27 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Info.plist +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.abi.json +15143 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.private.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.private.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/module.modulemap +11 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/PayEngineSDK +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/VGSCollectSDK_VGSCollectSDK.bundle/Assets.car +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/VGSCollectSDK_VGSCollectSDK.bundle/Info.plist +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/browserInfo.html +136 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/perform3ds.html +467 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Frameworks/libKountDataCollector.a +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/CustomWindow.h +25 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/KDataCollector.h +106 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/KountAnalyticsViewController.h +82 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/PayEngineSDK-Swift.h +1240 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/PayEngineSDK.h +20 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/UIControl+CustomControl.h +33 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Headers/UIViewController+TouchControl.h +27 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Info.plist +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.abi.json +15143 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.abi.json +15143 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e +326 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/module.modulemap +11 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/PayEngineSDK +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/VGSCollectSDK_VGSCollectSDK.bundle/Assets.car +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/VGSCollectSDK_VGSCollectSDK.bundle/Info.plist +0 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/browserInfo.html +136 -0
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/perform3ds.html +467 -0
- package/ios/Payengine.xcodeproj/project.pbxproj +30 -9
- package/ios/Payengine.xcodeproj/project.xcworkspace/xcuserdata/tringuyen.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Payengine.xcodeproj/xcuserdata/tringuyen.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +4 -4
- package/ios/Payengine.xcworkspace/contents.xcworkspacedata +7 -0
- package/ios/Payengine.xcworkspace/xcuserdata/tringuyen.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Sources/Classes/ApplePay/RNPEApplePayButton.swift +111 -0
- package/ios/Sources/Classes/ApplePay/RNPEApplePayPaymentRequest.swift +43 -0
- package/ios/Sources/Classes/RNPEError.swift +12 -0
- package/ios/Sources/Classes/RNPEEventEmitter.swift +29 -0
- package/ios/Sources/Classes/RNPEUtils.swift +30 -0
- package/ios/Sources/Classes/RNPayEngineNative.swift +87 -0
- package/ios/Sources/Classes/SecureFields/RNPEBankAccountView.swift +130 -0
- package/ios/Sources/Classes/SecureFields/RNPECreditCardView.swift +129 -0
- package/ios/Sources/Classes/SecureFields/RNPEEvents.swift +15 -0
- package/ios/Sources/Classes/SecureFields/RNPEField.swift +26 -0
- package/ios/Sources/Payengine.m +73 -0
- package/ios/Sources/Payengine.swift +13 -0
- package/lib/commonjs/components/PayEngine.js +2 -123
- package/lib/commonjs/components/PayEngine.js.map +1 -1
- package/lib/commonjs/components/{SecureFields/VGS/CardHolderNameField.js → v2/ApplePay/PEApplePayButton.js} +38 -13
- package/lib/commonjs/components/v2/ApplePay/PEApplePayButton.js.map +1 -0
- package/lib/commonjs/components/v2/ApplePay/PEPaymentRequest.js +29 -0
- package/lib/commonjs/components/v2/ApplePay/PEPaymentRequest.js.map +1 -0
- package/lib/commonjs/components/v2/PayEngineNative.js +34 -0
- package/lib/commonjs/components/v2/PayEngineNative.js.map +1 -0
- package/lib/commonjs/components/{SecureFields/VGS/TextField.js → v2/PayEngineProvider.js} +28 -12
- package/lib/commonjs/components/v2/PayEngineProvider.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/BankAccountView.js +89 -0
- package/lib/commonjs/components/v2/SecureFields/BankAccountView.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/CreditCardView.js +90 -0
- package/lib/commonjs/components/v2/SecureFields/CreditCardView.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/IPEField.js +6 -0
- package/lib/commonjs/components/v2/SecureFields/IPEField.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/PEBankAccount.js +6 -0
- package/lib/commonjs/components/v2/SecureFields/PEBankAccount.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/PECard.js +6 -0
- package/lib/commonjs/components/v2/SecureFields/PECard.js.map +1 -0
- package/lib/commonjs/components/v2/SecureFields/PEKeyboardType.js +18 -0
- package/lib/commonjs/components/v2/SecureFields/PEKeyboardType.js.map +1 -0
- package/lib/commonjs/index.js +73 -8
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/interfaces/index.js +2 -0
- package/lib/commonjs/interfaces/index.js.map +1 -0
- package/lib/commonjs/utils/index.js +29 -45
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/components/PayEngine.js +3 -118
- package/lib/module/components/PayEngine.js.map +1 -1
- package/lib/module/components/v2/ApplePay/PEApplePayButton.js +37 -0
- package/lib/module/components/v2/ApplePay/PEApplePayButton.js.map +1 -0
- package/lib/module/components/v2/ApplePay/PEPaymentRequest.js +20 -0
- package/lib/module/components/v2/ApplePay/PEPaymentRequest.js.map +1 -0
- package/lib/module/components/v2/PayEngineNative.js +23 -0
- package/lib/module/components/v2/PayEngineNative.js.map +1 -0
- package/lib/module/components/v2/PayEngineProvider.js +30 -0
- package/lib/module/components/v2/PayEngineProvider.js.map +1 -0
- package/lib/module/components/v2/SecureFields/BankAccountView.js +75 -0
- package/lib/module/components/v2/SecureFields/BankAccountView.js.map +1 -0
- package/lib/module/components/v2/SecureFields/CreditCardView.js +76 -0
- package/lib/module/components/v2/SecureFields/CreditCardView.js.map +1 -0
- package/lib/module/components/v2/SecureFields/IPEField.js +2 -0
- package/lib/module/components/v2/SecureFields/IPEField.js.map +1 -0
- package/lib/module/components/v2/SecureFields/PEBankAccount.js +2 -0
- package/lib/module/components/v2/SecureFields/PEBankAccount.js.map +1 -0
- package/lib/module/components/v2/SecureFields/PECard.js +2 -0
- package/lib/module/components/v2/SecureFields/PECard.js.map +1 -0
- package/lib/module/components/v2/SecureFields/PEKeyboardType.js +11 -0
- package/lib/module/components/v2/SecureFields/PEKeyboardType.js.map +1 -0
- package/lib/module/index.js +15 -6
- package/lib/module/index.js.map +1 -1
- package/lib/module/interfaces/index.js +2 -0
- package/lib/module/interfaces/index.js.map +1 -0
- package/lib/module/utils/index.js +20 -45
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/components/PayEngine.d.ts +1 -14
- package/lib/typescript/components/v2/ApplePay/PEApplePayButton.d.ts +12 -0
- package/lib/typescript/components/v2/ApplePay/PEPaymentRequest.d.ts +12 -0
- package/lib/typescript/components/v2/PayEngineNative.d.ts +5 -0
- package/lib/typescript/components/v2/PayEngineProvider.d.ts +8 -0
- package/lib/typescript/components/v2/SecureFields/BankAccountView.d.ts +14 -0
- package/lib/typescript/components/v2/SecureFields/CreditCardView.d.ts +14 -0
- package/lib/typescript/components/v2/SecureFields/IPEField.d.ts +10 -0
- package/lib/typescript/components/v2/SecureFields/PEBankAccount.d.ts +11 -0
- package/lib/typescript/components/v2/SecureFields/PECard.d.ts +13 -0
- package/lib/typescript/components/v2/SecureFields/PEKeyboardType.d.ts +7 -0
- package/lib/typescript/index.d.ts +13 -3
- package/lib/typescript/interfaces/index.d.ts +6 -0
- package/lib/typescript/utils/index.d.ts +7 -41
- package/package.json +17 -11
- package/react-native-payengine.podspec +3 -3
- package/src/components/LoadingIndicator.tsx +28 -0
- package/src/components/PayEngine.tsx +8 -0
- package/src/components/v2/ApplePay/PEApplePayButton.tsx +70 -0
- package/src/components/v2/ApplePay/PEPaymentRequest.ts +18 -0
- package/src/components/v2/PayEngineNative.tsx +20 -0
- package/src/components/v2/PayEngineProvider.tsx +30 -0
- package/src/components/v2/SecureFields/BankAccountView.tsx +95 -0
- package/src/components/v2/SecureFields/CreditCardView.tsx +96 -0
- package/src/components/v2/SecureFields/IPEField.ts +12 -0
- package/src/components/v2/SecureFields/PEBankAccount.ts +12 -0
- package/src/components/v2/SecureFields/PECard.ts +14 -0
- package/src/components/v2/SecureFields/PEKeyboardType.ts +8 -0
- package/src/index.tsx +62 -0
- package/src/interfaces/index.ts +6 -0
- package/src/utils/index.ts +79 -0
- package/android/.gradle/5.6.4/fileHashes/fileHashes.lock +0 -0
- package/android/src/main/java/com/reactnativepayengine/collect/VGSCollectModule.java +0 -148
- package/android/src/main/java/com/reactnativepayengine/collect/VGSCollectOnCreateViewInstanceListener.java +0 -6
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSCVCField.java +0 -67
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSCardHolderNameField.java +0 -53
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSCardNumberField.java +0 -57
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSExpDateField.java +0 -54
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSTextField.java +0 -57
- package/android/src/main/java/com/reactnativepayengine/collect/fields/VGSZipCodeField.java +0 -62
- package/android/src/main/java/com/reactnativepayengine/util/ResourceUtil.java +0 -14
- package/ios/Payengine.m +0 -55
- package/ios/Payengine.swift +0 -637
- package/lib/commonjs/components/SecureFields/VGS/CVCField.js +0 -26
- package/lib/commonjs/components/SecureFields/VGS/CVCField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/CardHolderNameField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/CardNumberField.js +0 -26
- package/lib/commonjs/components/SecureFields/VGS/CardNumberField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/CollectManager.js +0 -65
- package/lib/commonjs/components/SecureFields/VGS/CollectManager.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/ExpDateField.js +0 -26
- package/lib/commonjs/components/SecureFields/VGS/ExpDateField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/TextField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/VGS/ZipCodeField.js +0 -26
- package/lib/commonjs/components/SecureFields/VGS/ZipCodeField.js.map +0 -1
- package/lib/commonjs/components/SecureFields/index.js +0 -34
- package/lib/commonjs/components/SecureFields/index.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/CVCField.js +0 -14
- package/lib/module/components/SecureFields/VGS/CVCField.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/CardHolderNameField.js +0 -14
- package/lib/module/components/SecureFields/VGS/CardHolderNameField.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/CardNumberField.js +0 -14
- package/lib/module/components/SecureFields/VGS/CardNumberField.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/CollectManager.js +0 -50
- package/lib/module/components/SecureFields/VGS/CollectManager.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/ExpDateField.js +0 -14
- package/lib/module/components/SecureFields/VGS/ExpDateField.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/TextField.js +0 -17
- package/lib/module/components/SecureFields/VGS/TextField.js.map +0 -1
- package/lib/module/components/SecureFields/VGS/ZipCodeField.js +0 -14
- package/lib/module/components/SecureFields/VGS/ZipCodeField.js.map +0 -1
- package/lib/module/components/SecureFields/index.js +0 -17
- package/lib/module/components/SecureFields/index.js.map +0 -1
- package/lib/typescript/components/SecureFields/VGS/CVCField.d.ts +0 -10
- package/lib/typescript/components/SecureFields/VGS/CardHolderNameField.d.ts +0 -10
- package/lib/typescript/components/SecureFields/VGS/CardNumberField.d.ts +0 -10
- package/lib/typescript/components/SecureFields/VGS/CollectManager.d.ts +0 -12
- package/lib/typescript/components/SecureFields/VGS/ExpDateField.d.ts +0 -10
- package/lib/typescript/components/SecureFields/VGS/TextField.d.ts +0 -14
- package/lib/typescript/components/SecureFields/VGS/ZipCodeField.d.ts +0 -10
- package/lib/typescript/components/SecureFields/index.d.ts +0 -16
- /package/android/.gradle/{5.6.4 → 6.1.1}/fileChanges/last-build.bin +0 -0
- /package/android/.gradle/{5.6.4 → 6.1.1}/gc.properties +0 -0
- /package/android/{vgscollect-1.7.2-debug.aar → securefields-1.7.2-debug.aar} +0 -0
- /package/ios/{Payengine-Bridging-Header.h → Sources/Payengine-Bridging-Header.h} +0 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
package com.reactnativepayengine.v2.securefields.bankaccount
|
|
2
|
+
|
|
3
|
+
import android.util.Log
|
|
4
|
+
import com.facebook.react.bridge.Arguments
|
|
5
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
6
|
+
import com.facebook.react.bridge.ReadableArray
|
|
7
|
+
import com.facebook.react.modules.core.DeviceEventManagerModule.RCTDeviceEventEmitter
|
|
8
|
+
import com.facebook.react.uimanager.SimpleViewManager
|
|
9
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
|
+
import com.facebook.react.uimanager.annotations.ReactProp
|
|
11
|
+
import com.google.gson.Gson
|
|
12
|
+
import com.reactnativepayengine.v2.securefields.RNPEEvents
|
|
13
|
+
import com.reactnativepayengine.v2.securefields.RNPEField
|
|
14
|
+
import org.json.JSONArray
|
|
15
|
+
|
|
16
|
+
class RNPEBankAccountViewManager: SimpleViewManager<RNPEBankAccountView> {
|
|
17
|
+
private var context: ReactApplicationContext
|
|
18
|
+
|
|
19
|
+
@ReactProp(name = "additionalFields")
|
|
20
|
+
fun setPlaceholder(view: RNPEBankAccountView, jsonString: String?) {
|
|
21
|
+
val additionalFields: MutableList<RNPEField> = mutableListOf()
|
|
22
|
+
try {
|
|
23
|
+
val jsonArray = JSONArray(jsonString)
|
|
24
|
+
for (i in 0 until jsonArray.length()) {
|
|
25
|
+
val jsonObject = jsonArray.getJSONObject(i)
|
|
26
|
+
val name = jsonObject.getString("name")
|
|
27
|
+
val type = jsonObject.getString("type")
|
|
28
|
+
val placeholder = jsonObject.getString("placeholder")
|
|
29
|
+
val keyboardType = jsonObject.getString("keyboardType")
|
|
30
|
+
val isRequired = jsonObject.getBoolean("isRequired")
|
|
31
|
+
val pattern = jsonObject.optString("pattern")
|
|
32
|
+
val field = RNPEField(name, type, placeholder, keyboardType, isRequired, pattern)
|
|
33
|
+
additionalFields.add(field)
|
|
34
|
+
}
|
|
35
|
+
} catch (e: Exception) {
|
|
36
|
+
Log.e("PE", "Error parsing additional fields", e)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
view.setAdditionalFields(additionalFields)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
constructor(context: ReactApplicationContext) : super() {
|
|
44
|
+
this.context = context
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
override fun getName(): String {
|
|
48
|
+
return REACT_CLASS;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
override fun createViewInstance(reactContext: ThemedReactContext): RNPEBankAccountView {
|
|
52
|
+
return RNPEBankAccountView(reactContext, context.currentActivity)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
override fun getCommandsMap() = mapOf(
|
|
56
|
+
"submit" to COMMAND_SUBMIT,
|
|
57
|
+
"showKeyboard" to COMMAND_SHOW_KEYBOARD,
|
|
58
|
+
"hideKeyboard" to COMMAND_HIDE_KEYBOARD
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
override fun receiveCommand(root: RNPEBankAccountView, commandId: String?, args: ReadableArray?) {
|
|
62
|
+
super.receiveCommand(root, commandId, args)
|
|
63
|
+
when (commandId?.toInt()) {
|
|
64
|
+
COMMAND_SUBMIT -> {
|
|
65
|
+
val merchantId = args!!.getString(0)
|
|
66
|
+
val additionalData = args!!.getMap(1)
|
|
67
|
+
root.submit(merchantId, additionalData) { bankAccount ->
|
|
68
|
+
Log.d("PE", Gson().toJson(bankAccount))
|
|
69
|
+
if (bankAccount.STATUS == "FAILED") {
|
|
70
|
+
val params = Arguments.createMap().apply {
|
|
71
|
+
putString("error", bankAccount.ERROR.toString())
|
|
72
|
+
}
|
|
73
|
+
context
|
|
74
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
75
|
+
.emit(RNPEEvents.ON_BANK_ACCOUNT_RESPOND, params)
|
|
76
|
+
} else {
|
|
77
|
+
val json = Gson().toJson(bankAccount.DATA)
|
|
78
|
+
val params = Arguments.createMap().apply {
|
|
79
|
+
putString("bankAccount", json)
|
|
80
|
+
}
|
|
81
|
+
context
|
|
82
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
83
|
+
.emit(RNPEEvents.ON_BANK_ACCOUNT_RESPOND, params)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
COMMAND_SHOW_KEYBOARD -> {
|
|
88
|
+
root.showKeyboard()
|
|
89
|
+
}
|
|
90
|
+
COMMAND_HIDE_KEYBOARD -> {
|
|
91
|
+
root.hideKeyboard()
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
companion object {
|
|
97
|
+
private const val REACT_CLASS = "RNPEBankAccountView"
|
|
98
|
+
private const val COMMAND_SUBMIT = 1
|
|
99
|
+
private const val COMMAND_SHOW_KEYBOARD = 2
|
|
100
|
+
private const val COMMAND_HIDE_KEYBOARD = 3
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
package com.reactnativepayengine.v2.securefields.bankaccount
|
|
2
|
+
|
|
3
|
+
import android.app.Activity
|
|
4
|
+
import android.content.Context
|
|
5
|
+
import android.widget.LinearLayout
|
|
6
|
+
import com.facebook.react.bridge.Arguments
|
|
7
|
+
import com.facebook.react.bridge.ReadableMap
|
|
8
|
+
import com.facebook.react.modules.core.DeviceEventManagerModule.RCTDeviceEventEmitter
|
|
9
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
|
+
import com.payengine.paymentsdk.components.PEBankAccountView
|
|
11
|
+
import com.payengine.paymentsdk.components.PESizeChangeListener
|
|
12
|
+
import com.payengine.paymentsdk.models.responses.BankAccountResponse
|
|
13
|
+
import com.reactnativepayengine.util.MetricsUtil
|
|
14
|
+
import com.reactnativepayengine.v2.RNPayEngineNative
|
|
15
|
+
import com.reactnativepayengine.v2.securefields.RNPEEvents
|
|
16
|
+
import com.reactnativepayengine.v2.securefields.RNPEField
|
|
17
|
+
import kotlin.concurrent.thread
|
|
18
|
+
|
|
19
|
+
public class RNPEBankAccountView(private val context: ThemedReactContext, private val activity: Activity?) : LinearLayout(context) {
|
|
20
|
+
|
|
21
|
+
private var view: PEBankAccountView? = null
|
|
22
|
+
private var additionalFields: MutableList<RNPEField> = mutableListOf()
|
|
23
|
+
|
|
24
|
+
init {
|
|
25
|
+
this.orientation = VERTICAL
|
|
26
|
+
val layoutParams = LayoutParams(
|
|
27
|
+
LayoutParams.MATCH_PARENT,
|
|
28
|
+
0
|
|
29
|
+
)
|
|
30
|
+
this.layoutParams = layoutParams
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
fun setAdditionalFields(additionalFields: List<RNPEField>) {
|
|
34
|
+
this.additionalFields = additionalFields.toMutableList()
|
|
35
|
+
this.setupView()
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
private fun setupView() {
|
|
39
|
+
view = RNPayEngineNative.instance?.createBankAccountView(activity as Context, this.additionalFields.map { it.toNative() })
|
|
40
|
+
if (view != null) {
|
|
41
|
+
this.addView(view)
|
|
42
|
+
view!!.setSizeChangeListener(object: PESizeChangeListener {
|
|
43
|
+
override fun onSizeChanged(width: Int, height: Int) {
|
|
44
|
+
val params = Arguments.createMap().apply {
|
|
45
|
+
putInt("width", MetricsUtil.convertPixelsToDp(width.toFloat(), context).toInt())
|
|
46
|
+
putInt("height", MetricsUtil.convertPixelsToDp(height.toFloat(), context).toInt())
|
|
47
|
+
}
|
|
48
|
+
context
|
|
49
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
50
|
+
.emit(RNPEEvents.ON_SIZE_CHANGES, params)
|
|
51
|
+
}
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
fun submit(merchantId: String, additionalData: ReadableMap, callback: (BankAccountResponse) -> Unit) {
|
|
58
|
+
if (view == null) {
|
|
59
|
+
callback(BankAccountResponse("FAILED", null, "View is null"))
|
|
60
|
+
return
|
|
61
|
+
}
|
|
62
|
+
thread {
|
|
63
|
+
view!!.tokenize(merchantId, additionalData.toHashMap()) { bankAccount ->
|
|
64
|
+
callback(bankAccount)
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
fun showKeyboard() {
|
|
70
|
+
view?.showKeyboard()
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
fun hideKeyboard() {
|
|
74
|
+
view?.hideKeyboard()
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
package com.reactnativepayengine.v2.securefields.creditcard
|
|
2
|
+
|
|
3
|
+
import android.app.Activity
|
|
4
|
+
import android.content.Context
|
|
5
|
+
import android.widget.LinearLayout
|
|
6
|
+
import com.facebook.react.bridge.Arguments
|
|
7
|
+
import com.facebook.react.bridge.ReadableMap
|
|
8
|
+
import com.facebook.react.modules.core.DeviceEventManagerModule.RCTDeviceEventEmitter
|
|
9
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
|
+
import com.payengine.paymentsdk.components.PEPaymentView
|
|
11
|
+
import com.payengine.paymentsdk.components.PESizeChangeListener
|
|
12
|
+
import com.payengine.paymentsdk.models.responses.CardResponse
|
|
13
|
+
import com.reactnativepayengine.util.MetricsUtil
|
|
14
|
+
import com.reactnativepayengine.v2.RNPayEngineNative
|
|
15
|
+
import com.reactnativepayengine.v2.securefields.RNPEEvents
|
|
16
|
+
import com.reactnativepayengine.v2.securefields.RNPEField
|
|
17
|
+
import kotlin.concurrent.thread
|
|
18
|
+
|
|
19
|
+
public class RNPECreditCardView(private val context: ThemedReactContext, private val activity: Activity?) : LinearLayout(context) {
|
|
20
|
+
|
|
21
|
+
private var view: PEPaymentView? = null
|
|
22
|
+
private var additionalFields: MutableList<RNPEField> = mutableListOf()
|
|
23
|
+
|
|
24
|
+
init {
|
|
25
|
+
this.orientation = VERTICAL
|
|
26
|
+
val layoutParams = LayoutParams(
|
|
27
|
+
LayoutParams.MATCH_PARENT,
|
|
28
|
+
0
|
|
29
|
+
)
|
|
30
|
+
this.layoutParams = layoutParams
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
fun setAdditionalFields(additionalFields: List<RNPEField>) {
|
|
34
|
+
this.additionalFields = additionalFields.toMutableList()
|
|
35
|
+
this.setupView()
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
private fun setupView() {
|
|
39
|
+
view = RNPayEngineNative.instance?.createSecureView(activity as Context, this.additionalFields.map { it.toNative() })
|
|
40
|
+
if (view != null) {
|
|
41
|
+
this.addView(view)
|
|
42
|
+
view!!.setSizeChangeListener(object: PESizeChangeListener {
|
|
43
|
+
override fun onSizeChanged(width: Int, height: Int) {
|
|
44
|
+
val params = Arguments.createMap().apply {
|
|
45
|
+
putInt("width", MetricsUtil.convertPixelsToDp(width.toFloat(), context).toInt())
|
|
46
|
+
putInt("height", MetricsUtil.convertPixelsToDp(height.toFloat(), context).toInt())
|
|
47
|
+
}
|
|
48
|
+
context
|
|
49
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
50
|
+
.emit(RNPEEvents.ON_SIZE_CHANGES, params)
|
|
51
|
+
}
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
fun submit(merchantId: String, additionalData: ReadableMap, callback: (CardResponse) -> Unit) {
|
|
58
|
+
if (view == null) {
|
|
59
|
+
callback(CardResponse("FAILED", null, "View is null"))
|
|
60
|
+
return
|
|
61
|
+
}
|
|
62
|
+
thread {
|
|
63
|
+
view?.tokenize(merchantId, additionalData.toHashMap()) { card ->
|
|
64
|
+
callback(card)
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
fun showKeyboard() {
|
|
70
|
+
view?.showKeyboard()
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
fun hideKeyboard() {
|
|
74
|
+
view?.hideKeyboard()
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
package com.reactnativepayengine.v2.securefields.creditcard
|
|
2
|
+
|
|
3
|
+
import android.util.Log
|
|
4
|
+
import com.facebook.react.bridge.Arguments
|
|
5
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
6
|
+
import com.facebook.react.bridge.ReadableArray
|
|
7
|
+
import com.facebook.react.modules.core.DeviceEventManagerModule.RCTDeviceEventEmitter
|
|
8
|
+
import com.facebook.react.uimanager.SimpleViewManager
|
|
9
|
+
import com.facebook.react.uimanager.ThemedReactContext
|
|
10
|
+
import com.facebook.react.uimanager.annotations.ReactProp
|
|
11
|
+
import com.google.gson.Gson
|
|
12
|
+
import com.reactnativepayengine.v2.securefields.RNPEEvents
|
|
13
|
+
import com.reactnativepayengine.v2.securefields.RNPEField
|
|
14
|
+
import org.json.JSONArray
|
|
15
|
+
|
|
16
|
+
class RNPECreditCardViewManager: SimpleViewManager<RNPECreditCardView> {
|
|
17
|
+
private var context: ReactApplicationContext
|
|
18
|
+
|
|
19
|
+
@ReactProp(name = "additionalFields")
|
|
20
|
+
fun setPlaceholder(view: RNPECreditCardView, jsonString: String?) {
|
|
21
|
+
val additionalFields: MutableList<RNPEField> = mutableListOf()
|
|
22
|
+
try {
|
|
23
|
+
val jsonArray = JSONArray(jsonString)
|
|
24
|
+
for (i in 0 until jsonArray.length()) {
|
|
25
|
+
val jsonObject = jsonArray.getJSONObject(i)
|
|
26
|
+
val name = jsonObject.getString("name")
|
|
27
|
+
val type = jsonObject.getString("type")
|
|
28
|
+
val placeholder = jsonObject.getString("placeholder")
|
|
29
|
+
val keyboardType = jsonObject.getString("keyboardType")
|
|
30
|
+
val isRequired = jsonObject.getBoolean("isRequired")
|
|
31
|
+
val pattern = jsonObject.optString("pattern")
|
|
32
|
+
val field = RNPEField(name, type, placeholder, keyboardType, isRequired, pattern)
|
|
33
|
+
additionalFields.add(field)
|
|
34
|
+
}
|
|
35
|
+
} catch (e: Exception) {
|
|
36
|
+
Log.e("PE", "Error parsing additional fields", e)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
view.setAdditionalFields(additionalFields)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
constructor(context: ReactApplicationContext) : super() {
|
|
44
|
+
this.context = context
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
override fun getName(): String {
|
|
48
|
+
return REACT_CLASS;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
override fun createViewInstance(reactContext: ThemedReactContext): RNPECreditCardView {
|
|
52
|
+
return RNPECreditCardView(reactContext, context.currentActivity)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
override fun getCommandsMap() = mapOf(
|
|
56
|
+
"submit" to COMMAND_SUBMIT,
|
|
57
|
+
"showKeyboard" to COMMAND_SHOW_KEYBOARD,
|
|
58
|
+
"hideKeyboard" to COMMAND_HIDE_KEYBOARD
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
override fun receiveCommand(root: RNPECreditCardView, commandId: String?, args: ReadableArray?) {
|
|
62
|
+
super.receiveCommand(root, commandId, args)
|
|
63
|
+
Log.d("PE", "Received command $commandId")
|
|
64
|
+
when (commandId?.toInt()) {
|
|
65
|
+
COMMAND_SUBMIT -> {
|
|
66
|
+
val merchantId = args!!.getString(0)
|
|
67
|
+
val additionalData = args!!.getMap(1)
|
|
68
|
+
root.submit(merchantId, additionalData) { card ->
|
|
69
|
+
if (card.STATUS == "FAILED") {
|
|
70
|
+
val params = Arguments.createMap().apply {
|
|
71
|
+
putString("error", card.ERROR.toString())
|
|
72
|
+
}
|
|
73
|
+
context
|
|
74
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
75
|
+
.emit(RNPEEvents.ON_CARD_RESPOND, params)
|
|
76
|
+
} else {
|
|
77
|
+
val json = Gson().toJson(card.DATA)
|
|
78
|
+
val params = Arguments.createMap().apply {
|
|
79
|
+
putString("card", json)
|
|
80
|
+
}
|
|
81
|
+
context
|
|
82
|
+
.getJSModule(RCTDeviceEventEmitter::class.java)
|
|
83
|
+
.emit(RNPEEvents.ON_CARD_RESPOND, params)
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
COMMAND_SHOW_KEYBOARD -> {
|
|
88
|
+
root.showKeyboard()
|
|
89
|
+
}
|
|
90
|
+
COMMAND_HIDE_KEYBOARD -> {
|
|
91
|
+
root.hideKeyboard()
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
companion object {
|
|
97
|
+
private const val REACT_CLASS = "RNPECreditCardView"
|
|
98
|
+
private const val COMMAND_SUBMIT = 1
|
|
99
|
+
private const val COMMAND_SHOW_KEYBOARD = 2
|
|
100
|
+
private const val COMMAND_HIDE_KEYBOARD = 3
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>AvailableLibraries</key>
|
|
6
|
+
<array>
|
|
7
|
+
<dict>
|
|
8
|
+
<key>BinaryPath</key>
|
|
9
|
+
<string>PayEngineSDK.framework/PayEngineSDK</string>
|
|
10
|
+
<key>LibraryIdentifier</key>
|
|
11
|
+
<string>ios-arm64_x86_64-simulator</string>
|
|
12
|
+
<key>LibraryPath</key>
|
|
13
|
+
<string>PayEngineSDK.framework</string>
|
|
14
|
+
<key>SupportedArchitectures</key>
|
|
15
|
+
<array>
|
|
16
|
+
<string>arm64</string>
|
|
17
|
+
<string>x86_64</string>
|
|
18
|
+
</array>
|
|
19
|
+
<key>SupportedPlatform</key>
|
|
20
|
+
<string>ios</string>
|
|
21
|
+
<key>SupportedPlatformVariant</key>
|
|
22
|
+
<string>simulator</string>
|
|
23
|
+
</dict>
|
|
24
|
+
<dict>
|
|
25
|
+
<key>BinaryPath</key>
|
|
26
|
+
<string>PayEngineSDK.framework/PayEngineSDK</string>
|
|
27
|
+
<key>LibraryIdentifier</key>
|
|
28
|
+
<string>ios-arm64</string>
|
|
29
|
+
<key>LibraryPath</key>
|
|
30
|
+
<string>PayEngineSDK.framework</string>
|
|
31
|
+
<key>SupportedArchitectures</key>
|
|
32
|
+
<array>
|
|
33
|
+
<string>arm64</string>
|
|
34
|
+
</array>
|
|
35
|
+
<key>SupportedPlatform</key>
|
|
36
|
+
<string>ios</string>
|
|
37
|
+
</dict>
|
|
38
|
+
</array>
|
|
39
|
+
<key>CFBundlePackageType</key>
|
|
40
|
+
<string>XFWK</string>
|
|
41
|
+
<key>XCFrameworkFormatVersion</key>
|
|
42
|
+
<string>1.0</string>
|
|
43
|
+
</dict>
|
|
44
|
+
</plist>
|
|
Binary file
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
//
|
|
2
|
+
// CustomWindow.h
|
|
3
|
+
// TouchDemo
|
|
4
|
+
//
|
|
5
|
+
// Created by Astha Ameta on 19/08/20.
|
|
6
|
+
// Copyright © 2020 Kount Inc. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <UIKit/UIKit.h>
|
|
10
|
+
|
|
11
|
+
@protocol CustomWindowProtocol <NSObject>
|
|
12
|
+
-(void)touchesBeganCalledOfWindow:(NSSet<UITouch *> *_Nullable)touches withEvent:(UIEvent *_Nullable)event;
|
|
13
|
+
-(void)touchesEndedCalledOfWindow:(NSSet<UITouch *> *_Nullable)touches withEvent:(UIEvent *_Nullable)event;
|
|
14
|
+
-(void)touchesMovedCalledOfWindow:(NSSet<UITouch *> *_Nullable)touches withEvent:(UIEvent *_Nullable)event;
|
|
15
|
+
@end
|
|
16
|
+
|
|
17
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
18
|
+
|
|
19
|
+
@interface CustomWindow : UIWindow
|
|
20
|
+
|
|
21
|
+
@property(weak, nonatomic) id<CustomWindowProtocol> touchDelegate;
|
|
22
|
+
|
|
23
|
+
@end
|
|
24
|
+
|
|
25
|
+
NS_ASSUME_NONNULL_END
|
package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/KDataCollector.h
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
//
|
|
2
|
+
// KDataCollector.h
|
|
3
|
+
// Kount Data Collector SDK
|
|
4
|
+
//
|
|
5
|
+
// Copyright © 2016 Kount Inc. All rights reserved.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
// Error Codes
|
|
11
|
+
typedef NS_ENUM(NSInteger, KDataCollectorErrorCode) {
|
|
12
|
+
|
|
13
|
+
KDataCollectorErrorCodeUnknown = 0,
|
|
14
|
+
|
|
15
|
+
// A system error occurred
|
|
16
|
+
KDataCollectorErrorCodeNSError,
|
|
17
|
+
|
|
18
|
+
// A required collector timed out
|
|
19
|
+
KDataCollectorErrorCodeTimeout,
|
|
20
|
+
|
|
21
|
+
// A bad parameter was passed into the data collector
|
|
22
|
+
KDataCollectorErrorCodeBadParameter,
|
|
23
|
+
|
|
24
|
+
// A network connection isn't available
|
|
25
|
+
KDataCollectorErrorCodeNoNetwork,
|
|
26
|
+
|
|
27
|
+
// An error occurred while validating a response from the server
|
|
28
|
+
KDataCollectorErrorCodeResponseValidation,
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
32
|
+
|
|
33
|
+
extern NSString *const KDataCollectorErrorDomain;
|
|
34
|
+
|
|
35
|
+
// Version of the Kount Data Collector SDK
|
|
36
|
+
extern NSString *const KDataCollectorVersion;
|
|
37
|
+
|
|
38
|
+
// Configuration settings for location collection
|
|
39
|
+
typedef NS_ENUM(NSInteger, KLocationCollectorConfig) {
|
|
40
|
+
|
|
41
|
+
// Request permission if not currently authorized (default)
|
|
42
|
+
KLocationCollectorConfigRequestPermission = 0,
|
|
43
|
+
|
|
44
|
+
// Only collect if app already has location permissions
|
|
45
|
+
// (use in cases where requesting permission is done by the app itself)
|
|
46
|
+
KLocationCollectorConfigPassive,
|
|
47
|
+
|
|
48
|
+
// Skip location collection
|
|
49
|
+
KLocationCollectorConfigSkip,
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
// Configuration settings Kount collection environment
|
|
53
|
+
typedef NS_ENUM(NSInteger, KEnvironment) {
|
|
54
|
+
|
|
55
|
+
// Unknown Environment
|
|
56
|
+
KEnvironmentUnknown = 0,
|
|
57
|
+
|
|
58
|
+
// Test Environment
|
|
59
|
+
KEnvironmentTest,
|
|
60
|
+
|
|
61
|
+
// Production Environment
|
|
62
|
+
KEnvironmentProduction,
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
// KDataCollector enables you to collect device information for the given session
|
|
66
|
+
//
|
|
67
|
+
// First, configure the collector during the initialization of your application
|
|
68
|
+
// Second, call collectForSession when you start the payment checkout process
|
|
69
|
+
//
|
|
70
|
+
@interface KDataCollector : NSObject
|
|
71
|
+
|
|
72
|
+
// Get the shared instance of the Data Collector
|
|
73
|
+
+ (KDataCollector *)sharedCollector;
|
|
74
|
+
|
|
75
|
+
//
|
|
76
|
+
// Configuration
|
|
77
|
+
//
|
|
78
|
+
|
|
79
|
+
// The Kount Merchant ID
|
|
80
|
+
@property NSInteger merchantID;
|
|
81
|
+
// The configuration of the location collector to determine if and how it goes about collection location
|
|
82
|
+
@property KLocationCollectorConfig locationCollectorConfig;
|
|
83
|
+
// Debug logging to the console
|
|
84
|
+
@property BOOL debug;
|
|
85
|
+
// Timeout in MS for the collection
|
|
86
|
+
@property NSInteger timeoutInMS;
|
|
87
|
+
// The Kount environment
|
|
88
|
+
@property KEnvironment environment;
|
|
89
|
+
// Device Data Sending to Analytics SDK
|
|
90
|
+
@property NSDictionary *deviceDataForAnalytics;
|
|
91
|
+
|
|
92
|
+
//
|
|
93
|
+
// Collection
|
|
94
|
+
//
|
|
95
|
+
|
|
96
|
+
// Collect data for the session.
|
|
97
|
+
//
|
|
98
|
+
// @param sessionID A unique session ID that should match the sessionID for the payment transaction
|
|
99
|
+
// @param completionBlock This completion block will be called when the collection has completed or an error occurs.
|
|
100
|
+
- (void)collectForSession:(NSString *)sessionID completion:(nullable void (^)(NSString *_Nonnull sessionID, BOOL success, NSError *_Nullable error))completionBlock;
|
|
101
|
+
|
|
102
|
+
NS_ASSUME_NONNULL_END
|
|
103
|
+
|
|
104
|
+
@end
|
|
105
|
+
|
|
106
|
+
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
//
|
|
2
|
+
// KountAnalyticsViewController.h
|
|
3
|
+
// KountDataCollector
|
|
4
|
+
//
|
|
5
|
+
// Created by Vamsi Krishna on 07/08/20.
|
|
6
|
+
// Copyright © 2020 Kount Inc. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <UIKit/UIKit.h>
|
|
10
|
+
#import <Foundation/Foundation.h>
|
|
11
|
+
#import <CoreMotion/CoreMotion.h>
|
|
12
|
+
#import "KDataCollector.h"
|
|
13
|
+
|
|
14
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
15
|
+
// DMD-352: Device Collection Status
|
|
16
|
+
typedef NS_ENUM(NSInteger, KDataCollectorStatus) {
|
|
17
|
+
|
|
18
|
+
// A device data collection not started
|
|
19
|
+
KDataCollectorStatusNotStarted = 0,
|
|
20
|
+
|
|
21
|
+
// A device data collection started
|
|
22
|
+
KDataCollectorStatusStarted,
|
|
23
|
+
|
|
24
|
+
// A device data collection completed successfully
|
|
25
|
+
KDataCollectorStatusCompleted,
|
|
26
|
+
|
|
27
|
+
// A device data collection failed with error
|
|
28
|
+
KDataCollectorStatusFailedWithError,
|
|
29
|
+
|
|
30
|
+
// A device data collection failed without error
|
|
31
|
+
KDataCollectorStatusFailedWithOutError,
|
|
32
|
+
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
@interface KountAnalyticsViewController : UIViewController <UITextFieldDelegate, UITextViewDelegate, UISearchBarDelegate> {
|
|
37
|
+
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
+ (id)sharedInstance;
|
|
41
|
+
+ (void)setColorWellButtonType;
|
|
42
|
+
- (NSString *)getColorWellButtonType;
|
|
43
|
+
+ (NSString *)getAppSessionID;
|
|
44
|
+
- (BOOL)checkIsDeviceJailbroken;
|
|
45
|
+
- (void)appear;
|
|
46
|
+
- (void)disappear;
|
|
47
|
+
- (int64_t)getEpochTime;
|
|
48
|
+
- (void)storeDeletionTime;
|
|
49
|
+
- (void)storeStartingTime;
|
|
50
|
+
- (void)msDifferenceBetweenCharacter;
|
|
51
|
+
- (void)allMsDifferenceBetweenKeys;
|
|
52
|
+
- (void)assignInputData;
|
|
53
|
+
- (void)deviceDidRotate:(NSNotification *)notification;
|
|
54
|
+
- (void)collectBatteryData;
|
|
55
|
+
- (void)getBatteryState;
|
|
56
|
+
- (void)getBatteryLevel;
|
|
57
|
+
- (void)getLowPowerModeStatus;
|
|
58
|
+
- (void)didChangeBatteryState:(NSNotification *)notification;
|
|
59
|
+
- (void)didChangeBatteryLevel:(NSNotification *)notification;
|
|
60
|
+
- (void)didChangePowerMode:(NSNotification *)notification;
|
|
61
|
+
- (void)assignBatteryData;
|
|
62
|
+
- (void)getDeviceOrientationData;
|
|
63
|
+
- (void)collectDeviceOrientationData;
|
|
64
|
+
- (void)assignDeviceOrientationData;
|
|
65
|
+
- (void)checkForDeviceMotion;
|
|
66
|
+
- (void)collect:(NSString *)sessionID analyticsSwitch:(BOOL)analyticsData completion:(nullable void (^)(NSString *_Nonnull sessionID, BOOL success, NSError *_Nullable error))completionBlock;
|
|
67
|
+
- (NSString *)getSessionID;
|
|
68
|
+
- (void)createJsonObjectFormat;
|
|
69
|
+
- (void)storeLogInEvents:(BOOL)logInStatus;
|
|
70
|
+
- (void)assignFormData;
|
|
71
|
+
- (void)setEnvironmentForAnalytics:(KEnvironment)env;
|
|
72
|
+
- (void)registerBackgroundTask;
|
|
73
|
+
- (void)appInBackground;
|
|
74
|
+
|
|
75
|
+
// DMD:352
|
|
76
|
+
+ (nullable NSString *)getKDataCollectionStatus;
|
|
77
|
+
+ (nullable NSError *)getKDataCollectionError;
|
|
78
|
+
|
|
79
|
+
@end
|
|
80
|
+
|
|
81
|
+
NS_ASSUME_NONNULL_END
|
|
82
|
+
|