react-native-payengine 2.0.14 → 2.0.16
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 +12 -2
- package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.2/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
- package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/7.2/gc.properties +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/compiler.xml +1 -1
- package/android/.idea/gradle.xml +2 -2
- package/android/.idea/kotlinc.xml +6 -0
- package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_1_0.xml +1 -1
- package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_0_2_aar.xml +5 -5
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_0_0.xml +1 -1
- package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_asynclayoutinflater_asynclayoutinflater_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_autofill_autofill_1_1_0_aar.xml +5 -5
- package/android/.idea/libraries/Gradle__androidx_collection_collection_1_0_0.xml +1 -1
- package/android/.idea/libraries/Gradle__androidx_coordinatorlayout_coordinatorlayout_1_0_0_aar.xml +5 -5
- package/android/.idea/libraries/Gradle__androidx_core_core_1_2_0_aar.xml +16 -0
- package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_documentfile_documentfile_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_0_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_ui_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_legacy_legacy_support_core_utils_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_0_0.xml +1 -1
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_localbroadcastmanager_localbroadcastmanager_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_print_print_1_0_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__androidx_slidingpanelayout_slidingpanelayout_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_0_1_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fbjni_fbjni_java_only_0_2_2.xml +1 -1
- package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_2_5_0_aar.xml +4 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_2_5_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_2_5_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_2_5_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_2_5_0_aar.xml +4 -5
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_native_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_ashmem_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_java_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_native_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagefilters_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagetranscoder_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_fresco_ui_common_2_5_0_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_18_0.xml +1 -1
- package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_68_2_aar.xml +5 -5
- package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_3.xml +1 -1
- package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_3.xml +1 -1
- package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_3_aar.xml +3 -4
- package/android/.idea/libraries/Gradle__com_facebook_yoga_proguard_annotations_1_19_0.xml +1 -1
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_base_18_0_1_aar.xml +13 -0
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_basement_18_0_0_aar.xml +13 -0
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_identity_18_0_1_aar.xml +12 -0
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_maps_18_0_2_aar.xml +13 -0
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_tasks_18_0_1_aar.xml +12 -0
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_wallet_19_2_1_aar.xml +13 -0
- package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2.xml +1 -1
- package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_4_9_2.xml +1 -1
- package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_4_9_2.xml +1 -1
- package/android/.idea/libraries/Gradle__com_squareup_okio_okio_2_9_0.xml +4 -4
- package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +1 -1
- package/android/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml +1 -1
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_annotations_jvm_1_3_72.xml +1 -1
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_6_10.xml +14 -0
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_6_10.xml +14 -0
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_6_10.xml +14 -0
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_4_10.xml +1 -1
- package/android/.idea/migrations.xml +10 -0
- package/android/.idea/misc.xml +1 -1
- package/android/.idea/modules/android.androidTest.iml +66 -50
- package/android/.idea/modules/android.iml +3 -11
- package/android/.idea/modules/android.main.iml +58 -50
- package/android/.idea/modules/android.unitTest.iml +66 -51
- package/android/build.gradle +2 -2
- package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/android/gradle/wrapper/gradle-wrapper.properties +1 -2
- package/android/gradlew +172 -110
- package/android/gradlew.bat +24 -19
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/bankaccount/RNBankAccountViewManager.kt +2 -2
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/bankaccount/RNPEBankAccountView.kt +2 -2
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/creditcard/RNPECreditCardView.kt +3 -2
- package/android/src/main/java/com/reactnativepayengine/v2/securefields/creditcard/RNPECreditCardViewManager.kt +4 -2
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Headers/PayEngineSDK-Swift.h +2 -2
- 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 +102 -38
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.private.swiftinterface +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.private.swiftinterface-e +8 -8
- 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 +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios.swiftinterface-e +8 -8
- 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_x86_64-simulator/PayEngineSDK.framework/Headers/PayEngineSDK-Swift.h +4 -4
- 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 +102 -38
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface-e +8 -8
- 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 +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.abi.json +102 -38
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface-e +8 -8
- 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 +8 -8
- package/ios/PayEngineSDK.xcframework/ios-arm64_x86_64-simulator/PayEngineSDK.framework/Modules/PayEngineSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e +8 -8
- 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/Payengine.xcworkspace/xcuserdata/trinvh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- package/ios/Sources/Classes/RNPayEngineNative.swift +2 -0
- package/ios/Sources/Classes/SecureFields/RNPEBankAccountView.swift +27 -15
- package/ios/Sources/Classes/SecureFields/RNPECreditCardView.swift +27 -15
- package/lib/commonjs/components/v2/SecureFields/BankAccountView.js +3 -3
- package/lib/commonjs/components/v2/SecureFields/BankAccountView.js.map +1 -1
- package/lib/commonjs/components/v2/SecureFields/CreditCardView.js +3 -3
- package/lib/commonjs/components/v2/SecureFields/CreditCardView.js.map +1 -1
- package/lib/commonjs/components/v2/SecureFields/ITokenizationData.js +6 -0
- package/lib/commonjs/components/v2/SecureFields/ITokenizationData.js.map +1 -0
- package/lib/module/components/v2/SecureFields/BankAccountView.js +3 -3
- package/lib/module/components/v2/SecureFields/BankAccountView.js.map +1 -1
- package/lib/module/components/v2/SecureFields/CreditCardView.js +3 -3
- package/lib/module/components/v2/SecureFields/CreditCardView.js.map +1 -1
- package/lib/module/components/v2/SecureFields/ITokenizationData.js +2 -0
- package/lib/module/components/v2/SecureFields/ITokenizationData.js.map +1 -0
- package/lib/typescript/components/v2/SecureFields/BankAccountView.d.ts +2 -3
- package/lib/typescript/components/v2/SecureFields/CreditCardView.d.ts +2 -3
- package/lib/typescript/components/v2/SecureFields/ITokenizationData.d.ts +7 -0
- package/package.json +1 -1
- package/src/components/v2/SecureFields/BankAccountView.tsx +4 -3
- package/src/components/v2/SecureFields/CreditCardView.tsx +4 -3
- package/src/components/v2/SecureFields/ITokenizationData.ts +8 -0
- package/android/.idea/libraries/Gradle__android_arch_core_common_1_0_0.xml +0 -11
- package/android/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_0.xml +0 -11
- package/android/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__androidx_core_core_1_1_0_aar.xml +0 -16
- package/android/.idea/libraries/Gradle__com_android_support_support_annotations_26_1_0.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_compat_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_core_ui_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_core_utils_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_fragment_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_media_compat_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_android_support_support_v4_26_1_0_aar.xml +0 -13
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_base_15_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_basement_15_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_identity_15_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_maps_15_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_tasks_15_0_1_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__com_google_android_gms_play_services_wallet_16_0_0_aar.xml +0 -11
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_4_10.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_4_10.xml +0 -13
- package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_4_10.xml +0 -13
|
@@ -26,20 +26,29 @@ class RNPECreditCardView: UIView {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
private func setupView() {
|
|
29
|
-
// debugPrint("PayEngine instance \(String(describing: PayEngineNative.instance))")
|
|
30
|
-
// let zipField = PEField(name: "address_zip", type: "text", placeholder: "Zip code", isRequired: true, keyboardType: .alphabet, pattern: #"^(?:\d{5}(?:-\d{4})?|[ABCEGHJKLMNPRSTVXY]\d[A-Z] ?\d[A-Z]\d)$"#)
|
|
31
|
-
|
|
32
29
|
var customFields: [PEField] = []
|
|
33
|
-
if let
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
30
|
+
if let jsonData = additionalFields.data(using: .utf8) {
|
|
31
|
+
do {
|
|
32
|
+
let fields: [RNPEField] = try JSONDecoder().decode([RNPEField].self, from: jsonData)
|
|
33
|
+
if !fields.isEmpty {
|
|
34
|
+
for f in fields {
|
|
35
|
+
let field = PEField(
|
|
36
|
+
name: f.name,
|
|
37
|
+
type: f.type,
|
|
38
|
+
placeholder: f.placeholder,
|
|
39
|
+
isRequired: f.isRequired,
|
|
40
|
+
keyboardType: RNPEUtils.mapKeyboardType(keyboardType: f.keyboardType),
|
|
41
|
+
pattern: f.pattern
|
|
42
|
+
)
|
|
43
|
+
customFields.append(field)
|
|
44
|
+
}
|
|
39
45
|
}
|
|
40
46
|
}
|
|
47
|
+
catch {
|
|
48
|
+
debugPrint("Decoding error: \(error.localizedDescription), data: \(additionalFields)")
|
|
49
|
+
}
|
|
41
50
|
} else {
|
|
42
|
-
debugPrint("
|
|
51
|
+
debugPrint("Invalid UTF-8 string: \(additionalFields)")
|
|
43
52
|
}
|
|
44
53
|
RNPayEngineNative.instance?.createSecureView(additionalFields: customFields) { [unowned self] result in
|
|
45
54
|
switch result {
|
|
@@ -48,7 +57,6 @@ class RNPECreditCardView: UIView {
|
|
|
48
57
|
self.view!.detectSizeChanges { size in
|
|
49
58
|
// self.frame.size = size
|
|
50
59
|
RNPEEventEmitter.emitter.sendEvent(withName: RNPEEvents.EVENT_SIZE_CHANGES, body: ["width": size.width, "height": size.height])
|
|
51
|
-
debugPrint("Could not parse additional fields \(self.additionalFields)")
|
|
52
60
|
}
|
|
53
61
|
self.addSubview(self.view!)
|
|
54
62
|
case .failure(let error):
|
|
@@ -57,13 +65,16 @@ class RNPECreditCardView: UIView {
|
|
|
57
65
|
}
|
|
58
66
|
}
|
|
59
67
|
|
|
60
|
-
func submit(_ merchantId: String, additionalData: NSDictionary) {
|
|
68
|
+
func submit(_ merchantId: String? = nil, additionalData: NSDictionary? = [:]) {
|
|
61
69
|
guard let view = self.view else {
|
|
62
70
|
RNPEEventEmitter.emitter.sendEvent(withName: RNPEEvents.EVENT_CARD_RESPOND, body: ["error": "View is not ready"])
|
|
63
71
|
return
|
|
64
72
|
}
|
|
73
|
+
|
|
74
|
+
let additionalDataValue = additionalData ?? [:]
|
|
75
|
+
|
|
65
76
|
DispatchQueue.main.async {
|
|
66
|
-
view.createCard(merchantId: merchantId, additionalData:
|
|
77
|
+
view.createCard(merchantId: merchantId, additionalData: additionalDataValue as! [String : Any]) { result in
|
|
67
78
|
switch result {
|
|
68
79
|
case .success(let card):
|
|
69
80
|
debugPrint("Card created \(card)")
|
|
@@ -73,6 +84,7 @@ class RNPECreditCardView: UIView {
|
|
|
73
84
|
RNPEEventEmitter.emitter.sendEvent(withName: RNPEEvents.EVENT_CARD_RESPOND, body: ["error": "Unable to encode card object"])
|
|
74
85
|
}
|
|
75
86
|
case .failure(let error):
|
|
87
|
+
debugPrint("Tokenize error \(error)")
|
|
76
88
|
RNPEEventEmitter.emitter.sendEvent(withName: RNPEEvents.EVENT_CARD_RESPOND, body: ["error": error.localizedDescription])
|
|
77
89
|
}
|
|
78
90
|
}
|
|
@@ -103,8 +115,8 @@ class RNPECreditCardViewManager: RCTViewManager {
|
|
|
103
115
|
return [:]
|
|
104
116
|
}
|
|
105
117
|
|
|
106
|
-
@objc
|
|
107
|
-
func submit(_ node: NSNumber, merchantId: String, additionalData: NSDictionary) {
|
|
118
|
+
@objc
|
|
119
|
+
func submit(_ node: NSNumber, merchantId: String? = nil, additionalData: NSDictionary? = [:]) {
|
|
108
120
|
DispatchQueue.main.async {
|
|
109
121
|
let component = self.bridge.uiManager.view(forReactTag: node) as! RNPECreditCardView
|
|
110
122
|
component.submit(merchantId, additionalData: additionalData)
|
|
@@ -25,8 +25,8 @@ const PEBankAccountView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
25
25
|
const formRef = React.useRef();
|
|
26
26
|
const [height, setHeight] = React.useState(0);
|
|
27
27
|
React.useImperativeHandle(ref, () => ({
|
|
28
|
-
submit: async function (
|
|
29
|
-
let
|
|
28
|
+
submit: async function () {
|
|
29
|
+
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
30
30
|
return new Promise((resolve, reject) => {
|
|
31
31
|
if (height === 0) {
|
|
32
32
|
return reject(new Error('Form is not ready'));
|
|
@@ -46,7 +46,7 @@ const PEBankAccountView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
46
46
|
resolve(bankAccount);
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
|
-
callNativeMethod("submit", [merchantId, additionalData]);
|
|
49
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData]);
|
|
50
50
|
});
|
|
51
51
|
},
|
|
52
52
|
showKeyboard: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RNPEEventEmitter","NativeModules","COMPONENT_NAME","RNPEBankAccountView","requireNativeComponent","RNPEBankAccountViewManager","UIManager","peEventEmitter","NativeEventEmitter","PEBankAccountView","React","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","
|
|
1
|
+
{"version":3,"names":["RNPEEventEmitter","NativeModules","COMPONENT_NAME","RNPEBankAccountView","requireNativeComponent","RNPEBankAccountViewManager","UIManager","peEventEmitter","NativeEventEmitter","PEBankAccountView","React","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","data","Promise","resolve","reject","Error","listener","addListener","args","remove","error","bankAccount","json","JSON","parse","callNativeMethod","merchantId","additionalData","showKeyboard","hideKeyboard","useCallback","methodName","params","viewId","findNodeHandle","current","commandId","Commands","toString","Platform","OS","Number","dispatchViewManagerCommand","useEffect","eventListener","width","_","frameHeight","stringify","additionalFields"],"sources":["BankAccountView.tsx"],"sourcesContent":["\nimport * as React from 'react';\nimport { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, findNodeHandle, UIManager, ActivityIndicator, Platform } from 'react-native';\nimport type IPEField from './IPEField';\nimport type PEBankAccount from './PEBankAccount';\nimport type ITokenizationData from './ITokenizationData';\n\nconst { RNPEEventEmitter } = NativeModules;\n\ninterface NativePEBankAccountViewProps extends ViewProps {\n additionalFields: string;\n}\n\nconst COMPONENT_NAME = 'RNPEBankAccountView'\nconst RNPEBankAccountView = requireNativeComponent<NativePEBankAccountViewProps>(COMPONENT_NAME);\n// @ts-ignore\nconst RNPEBankAccountViewManager = UIManager[COMPONENT_NAME]\n\nconst peEventEmitter = new NativeEventEmitter(RNPEEventEmitter);\n\nexport interface PEBankAccountViewProps {\n additionalFields?: IPEField[];\n}\n\nexport interface PEBankAccountViewMethods {\n submit: (data: ITokenizationData) => Promise<PEBankAccount>;\n showKeyboard: () => void;\n hideKeyboard: () => void;\n}\n\nexport const PEBankAccountView = React.forwardRef<\n PEBankAccountViewMethods,\n PEBankAccountViewProps\n>((props, ref) => {\n const formRef = React.useRef<any>();\n const [height, setHeight] = React.useState(0);\n\n React.useImperativeHandle(ref, () => ({\n submit: async (data: ITokenizationData = {}) => {\n return new Promise((resolve, reject) => {\n if (height === 0) {\n return reject(new Error('Form is not ready'))\n }\n \n const listener = peEventEmitter.addListener('onBankAccountRespond', args => {\n listener.remove()\n\n const { error, bankAccount: json } = args;\n if (error) {\n reject(new Error(error))\n } else {\n const bankAccount = JSON.parse(json) as PEBankAccount;\n resolve(bankAccount)\n }\n });\n\n callNativeMethod(\"submit\", [data.merchantId, data.additionalData],)\n });\n },\n showKeyboard: () => {\n callNativeMethod(\"showKeyboard\")\n },\n hideKeyboard: () => {\n callNativeMethod(\"hideKeyboard\")\n }\n }));\n\n const callNativeMethod = React.useCallback((methodName: string, params: any[] = []) => {\n const viewId = findNodeHandle(formRef.current);\n let commandId = RNPEBankAccountViewManager.Commands[methodName].toString()\n if (Platform.OS === 'ios') {\n commandId = Number(commandId)\n }\n UIManager.dispatchViewManagerCommand(\n viewId,\n commandId,\n params,\n );\n }, [formRef.current])\n\n\n React.useEffect(() => {\n const eventListener = peEventEmitter.addListener('onSizeChanges', args => {\n const { width: _, height: frameHeight } = args;\n setHeight(frameHeight);\n });\n return () => eventListener.remove();\n }, []);\n\n return (\n <>\n {height === 0 && <ActivityIndicator />}\n <RNPEBankAccountView ref={formRef} additionalFields={JSON.stringify(props.additionalFields ?? [])} style={{ height: height }} />\n </>\n );\n});\n"],"mappings":"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"}
|
|
@@ -25,8 +25,8 @@ const PECreditCardView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
25
25
|
const formRef = React.useRef();
|
|
26
26
|
const [height, setHeight] = React.useState(0);
|
|
27
27
|
React.useImperativeHandle(ref, () => ({
|
|
28
|
-
submit: async function (
|
|
29
|
-
let
|
|
28
|
+
submit: async function () {
|
|
29
|
+
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
30
30
|
return new Promise((resolve, reject) => {
|
|
31
31
|
if (height === 0) {
|
|
32
32
|
return reject(new Error('Form is not ready'));
|
|
@@ -46,7 +46,7 @@ const PECreditCardView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
46
46
|
resolve(card);
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
|
-
callNativeMethod("submit", [merchantId, additionalData]);
|
|
49
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData]);
|
|
50
50
|
});
|
|
51
51
|
},
|
|
52
52
|
showKeyboard: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RNPEEventEmitter","NativeModules","COMPONENT_NAME","RNPECreditCardView","requireNativeComponent","RNPECreditCardViewManager","UIManager","peEventEmitter","NativeEventEmitter","PECreditCardView","React","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","
|
|
1
|
+
{"version":3,"names":["RNPEEventEmitter","NativeModules","COMPONENT_NAME","RNPECreditCardView","requireNativeComponent","RNPECreditCardViewManager","UIManager","peEventEmitter","NativeEventEmitter","PECreditCardView","React","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","data","Promise","resolve","reject","Error","listener","addListener","args","remove","error","card","json","JSON","parse","callNativeMethod","merchantId","additionalData","showKeyboard","hideKeyboard","useCallback","methodName","params","console","log","viewId","findNodeHandle","current","commandId","Commands","toString","Platform","OS","Number","dispatchViewManagerCommand","useEffect","eventListener","width","_","frameHeight","stringify","additionalFields"],"sources":["CreditCardView.tsx"],"sourcesContent":["\nimport * as React from 'react';\nimport { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, Platform, findNodeHandle, UIManager, ActivityIndicator } from 'react-native';\nimport type IPEField from './IPEField';\nimport type PECard from './PECard';\nimport type ITokenizationData from './ITokenizationData';\n\nconst { RNPEEventEmitter } = NativeModules;\n\ninterface NativePECreditCardViewProps extends ViewProps {\n additionalFields: string;\n}\n\nconst COMPONENT_NAME = 'RNPECreditCardView'\nconst RNPECreditCardView = requireNativeComponent<NativePECreditCardViewProps>(COMPONENT_NAME);\n// @ts-ignore\nconst RNPECreditCardViewManager = UIManager[COMPONENT_NAME]\nconst peEventEmitter = new NativeEventEmitter(RNPEEventEmitter);\n\nexport interface PECreditCardViewProps {\n additionalFields?: IPEField[];\n}\n\nexport interface PECreditCardViewMethods {\n submit: (data: ITokenizationData) => Promise<PECard>;\n showKeyboard: () => void;\n hideKeyboard: () => void;\n}\n\nexport const PECreditCardView = React.forwardRef<\n PECreditCardViewMethods,\n PECreditCardViewProps\n>((props, ref) => {\n const formRef = React.useRef<any>();\n const [height, setHeight] = React.useState(0);\n\n React.useImperativeHandle(ref, () => ({\n submit: async (data: ITokenizationData = {}) => {\n return new Promise((resolve, reject) => {\n if (height === 0) {\n return reject(new Error('Form is not ready'))\n }\n\n const listener = peEventEmitter.addListener('onCardRespond', args => {\n listener.remove()\n\n const { error, card: json } = args;\n if (error) {\n reject(new Error(error))\n } else {\n const card = JSON.parse(json) as PECard;\n resolve(card)\n }\n });\n\n callNativeMethod(\"submit\", [data.merchantId, data.additionalData])\n });\n },\n showKeyboard: () => {\n callNativeMethod(\"showKeyboard\")\n },\n hideKeyboard: () => {\n callNativeMethod(\"hideKeyboard\")\n }\n }));\n\n const callNativeMethod = React.useCallback((methodName: string, params: any[] = []) => {\n console.log(\"callNativeMethod\", methodName, params)\n const viewId = findNodeHandle(formRef.current);\n let commandId = RNPECreditCardViewManager.Commands[methodName].toString()\n if (Platform.OS === 'ios') {\n commandId = Number(commandId)\n }\n UIManager.dispatchViewManagerCommand(\n viewId,\n commandId,\n params,\n );\n }, [formRef.current])\n\n React.useEffect(() => {\n const eventListener = peEventEmitter.addListener('onSizeChanges', args => {\n const { width: _, height: frameHeight } = args;\n setHeight(frameHeight);\n });\n\n return () => eventListener.remove();\n }, []);\n\n\n return (\n <>\n {height === 0 && <ActivityIndicator />}\n <RNPECreditCardView ref={formRef} additionalFields={JSON.stringify(props.additionalFields ?? [])} style={{ height: height }} />\n </>\n );\n});\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["ITokenizationData.ts"],"sourcesContent":["interface ITokenizationData {\n merchantId?: string;\n additionalData?: { \n [key: string]: string \n };\n}\n\nexport default ITokenizationData;\n"],"mappings":""}
|
|
@@ -12,8 +12,8 @@ export const PEBankAccountView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
12
12
|
const formRef = React.useRef();
|
|
13
13
|
const [height, setHeight] = React.useState(0);
|
|
14
14
|
React.useImperativeHandle(ref, () => ({
|
|
15
|
-
submit: async function (
|
|
16
|
-
let
|
|
15
|
+
submit: async function () {
|
|
16
|
+
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
17
17
|
return new Promise((resolve, reject) => {
|
|
18
18
|
if (height === 0) {
|
|
19
19
|
return reject(new Error('Form is not ready'));
|
|
@@ -33,7 +33,7 @@ export const PEBankAccountView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
33
33
|
resolve(bankAccount);
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
-
callNativeMethod("submit", [merchantId, additionalData]);
|
|
36
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData]);
|
|
37
37
|
});
|
|
38
38
|
},
|
|
39
39
|
showKeyboard: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","requireNativeComponent","NativeModules","NativeEventEmitter","findNodeHandle","UIManager","ActivityIndicator","Platform","RNPEEventEmitter","COMPONENT_NAME","RNPEBankAccountView","RNPEBankAccountViewManager","peEventEmitter","PEBankAccountView","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","
|
|
1
|
+
{"version":3,"names":["React","requireNativeComponent","NativeModules","NativeEventEmitter","findNodeHandle","UIManager","ActivityIndicator","Platform","RNPEEventEmitter","COMPONENT_NAME","RNPEBankAccountView","RNPEBankAccountViewManager","peEventEmitter","PEBankAccountView","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","data","Promise","resolve","reject","Error","listener","addListener","args","remove","error","bankAccount","json","JSON","parse","callNativeMethod","merchantId","additionalData","showKeyboard","hideKeyboard","useCallback","methodName","params","viewId","current","commandId","Commands","toString","OS","Number","dispatchViewManagerCommand","useEffect","eventListener","width","_","frameHeight","stringify","additionalFields"],"sources":["BankAccountView.tsx"],"sourcesContent":["\nimport * as React from 'react';\nimport { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, findNodeHandle, UIManager, ActivityIndicator, Platform } from 'react-native';\nimport type IPEField from './IPEField';\nimport type PEBankAccount from './PEBankAccount';\nimport type ITokenizationData from './ITokenizationData';\n\nconst { RNPEEventEmitter } = NativeModules;\n\ninterface NativePEBankAccountViewProps extends ViewProps {\n additionalFields: string;\n}\n\nconst COMPONENT_NAME = 'RNPEBankAccountView'\nconst RNPEBankAccountView = requireNativeComponent<NativePEBankAccountViewProps>(COMPONENT_NAME);\n// @ts-ignore\nconst RNPEBankAccountViewManager = UIManager[COMPONENT_NAME]\n\nconst peEventEmitter = new NativeEventEmitter(RNPEEventEmitter);\n\nexport interface PEBankAccountViewProps {\n additionalFields?: IPEField[];\n}\n\nexport interface PEBankAccountViewMethods {\n submit: (data: ITokenizationData) => Promise<PEBankAccount>;\n showKeyboard: () => void;\n hideKeyboard: () => void;\n}\n\nexport const PEBankAccountView = React.forwardRef<\n PEBankAccountViewMethods,\n PEBankAccountViewProps\n>((props, ref) => {\n const formRef = React.useRef<any>();\n const [height, setHeight] = React.useState(0);\n\n React.useImperativeHandle(ref, () => ({\n submit: async (data: ITokenizationData = {}) => {\n return new Promise((resolve, reject) => {\n if (height === 0) {\n return reject(new Error('Form is not ready'))\n }\n \n const listener = peEventEmitter.addListener('onBankAccountRespond', args => {\n listener.remove()\n\n const { error, bankAccount: json } = args;\n if (error) {\n reject(new Error(error))\n } else {\n const bankAccount = JSON.parse(json) as PEBankAccount;\n resolve(bankAccount)\n }\n });\n\n callNativeMethod(\"submit\", [data.merchantId, data.additionalData],)\n });\n },\n showKeyboard: () => {\n callNativeMethod(\"showKeyboard\")\n },\n hideKeyboard: () => {\n callNativeMethod(\"hideKeyboard\")\n }\n }));\n\n const callNativeMethod = React.useCallback((methodName: string, params: any[] = []) => {\n const viewId = findNodeHandle(formRef.current);\n let commandId = RNPEBankAccountViewManager.Commands[methodName].toString()\n if (Platform.OS === 'ios') {\n commandId = Number(commandId)\n }\n UIManager.dispatchViewManagerCommand(\n viewId,\n commandId,\n params,\n );\n }, [formRef.current])\n\n\n React.useEffect(() => {\n const eventListener = peEventEmitter.addListener('onSizeChanges', args => {\n const { width: _, height: frameHeight } = args;\n setHeight(frameHeight);\n });\n return () => eventListener.remove();\n }, []);\n\n return (\n <>\n {height === 0 && <ActivityIndicator />}\n <RNPEBankAccountView ref={formRef} additionalFields={JSON.stringify(props.additionalFields ?? [])} style={{ height: height }} />\n </>\n );\n});\n"],"mappings":"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"}
|
|
@@ -12,8 +12,8 @@ export const PECreditCardView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
12
12
|
const formRef = React.useRef();
|
|
13
13
|
const [height, setHeight] = React.useState(0);
|
|
14
14
|
React.useImperativeHandle(ref, () => ({
|
|
15
|
-
submit: async function (
|
|
16
|
-
let
|
|
15
|
+
submit: async function () {
|
|
16
|
+
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
17
17
|
return new Promise((resolve, reject) => {
|
|
18
18
|
if (height === 0) {
|
|
19
19
|
return reject(new Error('Form is not ready'));
|
|
@@ -33,7 +33,7 @@ export const PECreditCardView = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
33
33
|
resolve(card);
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
-
callNativeMethod("submit", [merchantId, additionalData]);
|
|
36
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData]);
|
|
37
37
|
});
|
|
38
38
|
},
|
|
39
39
|
showKeyboard: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","requireNativeComponent","NativeModules","NativeEventEmitter","Platform","findNodeHandle","UIManager","ActivityIndicator","RNPEEventEmitter","COMPONENT_NAME","RNPECreditCardView","RNPECreditCardViewManager","peEventEmitter","PECreditCardView","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","
|
|
1
|
+
{"version":3,"names":["React","requireNativeComponent","NativeModules","NativeEventEmitter","Platform","findNodeHandle","UIManager","ActivityIndicator","RNPEEventEmitter","COMPONENT_NAME","RNPECreditCardView","RNPECreditCardViewManager","peEventEmitter","PECreditCardView","forwardRef","props","ref","formRef","useRef","height","setHeight","useState","useImperativeHandle","submit","data","Promise","resolve","reject","Error","listener","addListener","args","remove","error","card","json","JSON","parse","callNativeMethod","merchantId","additionalData","showKeyboard","hideKeyboard","useCallback","methodName","params","console","log","viewId","current","commandId","Commands","toString","OS","Number","dispatchViewManagerCommand","useEffect","eventListener","width","_","frameHeight","stringify","additionalFields"],"sources":["CreditCardView.tsx"],"sourcesContent":["\nimport * as React from 'react';\nimport { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, Platform, findNodeHandle, UIManager, ActivityIndicator } from 'react-native';\nimport type IPEField from './IPEField';\nimport type PECard from './PECard';\nimport type ITokenizationData from './ITokenizationData';\n\nconst { RNPEEventEmitter } = NativeModules;\n\ninterface NativePECreditCardViewProps extends ViewProps {\n additionalFields: string;\n}\n\nconst COMPONENT_NAME = 'RNPECreditCardView'\nconst RNPECreditCardView = requireNativeComponent<NativePECreditCardViewProps>(COMPONENT_NAME);\n// @ts-ignore\nconst RNPECreditCardViewManager = UIManager[COMPONENT_NAME]\nconst peEventEmitter = new NativeEventEmitter(RNPEEventEmitter);\n\nexport interface PECreditCardViewProps {\n additionalFields?: IPEField[];\n}\n\nexport interface PECreditCardViewMethods {\n submit: (data: ITokenizationData) => Promise<PECard>;\n showKeyboard: () => void;\n hideKeyboard: () => void;\n}\n\nexport const PECreditCardView = React.forwardRef<\n PECreditCardViewMethods,\n PECreditCardViewProps\n>((props, ref) => {\n const formRef = React.useRef<any>();\n const [height, setHeight] = React.useState(0);\n\n React.useImperativeHandle(ref, () => ({\n submit: async (data: ITokenizationData = {}) => {\n return new Promise((resolve, reject) => {\n if (height === 0) {\n return reject(new Error('Form is not ready'))\n }\n\n const listener = peEventEmitter.addListener('onCardRespond', args => {\n listener.remove()\n\n const { error, card: json } = args;\n if (error) {\n reject(new Error(error))\n } else {\n const card = JSON.parse(json) as PECard;\n resolve(card)\n }\n });\n\n callNativeMethod(\"submit\", [data.merchantId, data.additionalData])\n });\n },\n showKeyboard: () => {\n callNativeMethod(\"showKeyboard\")\n },\n hideKeyboard: () => {\n callNativeMethod(\"hideKeyboard\")\n }\n }));\n\n const callNativeMethod = React.useCallback((methodName: string, params: any[] = []) => {\n console.log(\"callNativeMethod\", methodName, params)\n const viewId = findNodeHandle(formRef.current);\n let commandId = RNPECreditCardViewManager.Commands[methodName].toString()\n if (Platform.OS === 'ios') {\n commandId = Number(commandId)\n }\n UIManager.dispatchViewManagerCommand(\n viewId,\n commandId,\n params,\n );\n }, [formRef.current])\n\n React.useEffect(() => {\n const eventListener = peEventEmitter.addListener('onSizeChanges', args => {\n const { width: _, height: frameHeight } = args;\n setHeight(frameHeight);\n });\n\n return () => eventListener.remove();\n }, []);\n\n\n return (\n <>\n {height === 0 && <ActivityIndicator />}\n <RNPECreditCardView ref={formRef} additionalFields={JSON.stringify(props.additionalFields ?? [])} style={{ height: height }} />\n </>\n );\n});\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["ITokenizationData.ts"],"sourcesContent":["interface ITokenizationData {\n merchantId?: string;\n additionalData?: { \n [key: string]: string \n };\n}\n\nexport default ITokenizationData;\n"],"mappings":""}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type IPEField from './IPEField';
|
|
3
3
|
import type PEBankAccount from './PEBankAccount';
|
|
4
|
+
import type ITokenizationData from './ITokenizationData';
|
|
4
5
|
export interface PEBankAccountViewProps {
|
|
5
6
|
additionalFields?: IPEField[];
|
|
6
7
|
}
|
|
7
8
|
export interface PEBankAccountViewMethods {
|
|
8
|
-
submit: (
|
|
9
|
-
[key: string]: string;
|
|
10
|
-
}) => Promise<PEBankAccount>;
|
|
9
|
+
submit: (data: ITokenizationData) => Promise<PEBankAccount>;
|
|
11
10
|
showKeyboard: () => void;
|
|
12
11
|
hideKeyboard: () => void;
|
|
13
12
|
}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type IPEField from './IPEField';
|
|
3
3
|
import type PECard from './PECard';
|
|
4
|
+
import type ITokenizationData from './ITokenizationData';
|
|
4
5
|
export interface PECreditCardViewProps {
|
|
5
6
|
additionalFields?: IPEField[];
|
|
6
7
|
}
|
|
7
8
|
export interface PECreditCardViewMethods {
|
|
8
|
-
submit: (
|
|
9
|
-
[key: string]: string;
|
|
10
|
-
}) => Promise<PECard>;
|
|
9
|
+
submit: (data: ITokenizationData) => Promise<PECard>;
|
|
11
10
|
showKeyboard: () => void;
|
|
12
11
|
hideKeyboard: () => void;
|
|
13
12
|
}
|
package/package.json
CHANGED
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, findNodeHandle, UIManager, ActivityIndicator, Platform } from 'react-native';
|
|
4
4
|
import type IPEField from './IPEField';
|
|
5
5
|
import type PEBankAccount from './PEBankAccount';
|
|
6
|
+
import type ITokenizationData from './ITokenizationData';
|
|
6
7
|
|
|
7
8
|
const { RNPEEventEmitter } = NativeModules;
|
|
8
9
|
|
|
@@ -22,7 +23,7 @@ export interface PEBankAccountViewProps {
|
|
|
22
23
|
}
|
|
23
24
|
|
|
24
25
|
export interface PEBankAccountViewMethods {
|
|
25
|
-
submit: (
|
|
26
|
+
submit: (data: ITokenizationData) => Promise<PEBankAccount>;
|
|
26
27
|
showKeyboard: () => void;
|
|
27
28
|
hideKeyboard: () => void;
|
|
28
29
|
}
|
|
@@ -35,7 +36,7 @@ export const PEBankAccountView = React.forwardRef<
|
|
|
35
36
|
const [height, setHeight] = React.useState(0);
|
|
36
37
|
|
|
37
38
|
React.useImperativeHandle(ref, () => ({
|
|
38
|
-
submit: async (
|
|
39
|
+
submit: async (data: ITokenizationData = {}) => {
|
|
39
40
|
return new Promise((resolve, reject) => {
|
|
40
41
|
if (height === 0) {
|
|
41
42
|
return reject(new Error('Form is not ready'))
|
|
@@ -53,7 +54,7 @@ export const PEBankAccountView = React.forwardRef<
|
|
|
53
54
|
}
|
|
54
55
|
});
|
|
55
56
|
|
|
56
|
-
callNativeMethod("submit", [merchantId, additionalData],)
|
|
57
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData],)
|
|
57
58
|
});
|
|
58
59
|
},
|
|
59
60
|
showKeyboard: () => {
|
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import { requireNativeComponent, NativeModules, NativeEventEmitter, ViewProps, Platform, findNodeHandle, UIManager, ActivityIndicator } from 'react-native';
|
|
4
4
|
import type IPEField from './IPEField';
|
|
5
5
|
import type PECard from './PECard';
|
|
6
|
+
import type ITokenizationData from './ITokenizationData';
|
|
6
7
|
|
|
7
8
|
const { RNPEEventEmitter } = NativeModules;
|
|
8
9
|
|
|
@@ -21,7 +22,7 @@ export interface PECreditCardViewProps {
|
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
export interface PECreditCardViewMethods {
|
|
24
|
-
submit: (
|
|
25
|
+
submit: (data: ITokenizationData) => Promise<PECard>;
|
|
25
26
|
showKeyboard: () => void;
|
|
26
27
|
hideKeyboard: () => void;
|
|
27
28
|
}
|
|
@@ -34,7 +35,7 @@ export const PECreditCardView = React.forwardRef<
|
|
|
34
35
|
const [height, setHeight] = React.useState(0);
|
|
35
36
|
|
|
36
37
|
React.useImperativeHandle(ref, () => ({
|
|
37
|
-
submit: async (
|
|
38
|
+
submit: async (data: ITokenizationData = {}) => {
|
|
38
39
|
return new Promise((resolve, reject) => {
|
|
39
40
|
if (height === 0) {
|
|
40
41
|
return reject(new Error('Form is not ready'))
|
|
@@ -52,7 +53,7 @@ export const PECreditCardView = React.forwardRef<
|
|
|
52
53
|
}
|
|
53
54
|
});
|
|
54
55
|
|
|
55
|
-
callNativeMethod("submit", [merchantId, additionalData])
|
|
56
|
+
callNativeMethod("submit", [data.merchantId, data.additionalData])
|
|
56
57
|
});
|
|
57
58
|
},
|
|
58
59
|
showKeyboard: () => {
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: android.arch.core:common:1.0.0">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.core/common/1.0.0/a2d487452376193fc8c103dd2b9bd5f2b1b44563/common-1.0.0.jar!/" />
|
|
5
|
-
</CLASSES>
|
|
6
|
-
<JAVADOC />
|
|
7
|
-
<SOURCES>
|
|
8
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.core/common/1.0.0/a41fa3b9a66f3bdd41f98013a1688e969072aaf2/common-1.0.0-sources.jar!/" />
|
|
9
|
-
</SOURCES>
|
|
10
|
-
</library>
|
|
11
|
-
</component>
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: android.arch.lifecycle:common:1.0.0">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/common/1.0.0/e414a4cb28434e25c4f6aa71426eb20cf4874ae9/common-1.0.0.jar!/" />
|
|
5
|
-
</CLASSES>
|
|
6
|
-
<JAVADOC />
|
|
7
|
-
<SOURCES>
|
|
8
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/common/1.0.0/39ce4055689b4b766478265a8c661f4165f26dc3/common-1.0.0-sources.jar!/" />
|
|
9
|
-
</SOURCES>
|
|
10
|
-
</library>
|
|
11
|
-
</component>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: android.arch.lifecycle:runtime:1.0.0@aar">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/0153b7b32b50155c05c597945fbb09b3/runtime-1.0.0/jars/classes.jar!/" />
|
|
5
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/0153b7b32b50155c05c597945fbb09b3/runtime-1.0.0/res" />
|
|
6
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/0153b7b32b50155c05c597945fbb09b3/runtime-1.0.0/AndroidManifest.xml" />
|
|
7
|
-
</CLASSES>
|
|
8
|
-
<JAVADOC />
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/runtime/1.0.0/1dd0298d8c45d8dfa4d038270247327f23df7a3a/runtime-1.0.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: androidx.core:core:1.1.0@aar">
|
|
3
|
-
<ANNOTATIONS>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/65aa9efd5ac59e607457eb12354be1a7/core-1.1.0/annotations.zip!/" />
|
|
5
|
-
</ANNOTATIONS>
|
|
6
|
-
<CLASSES>
|
|
7
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/65aa9efd5ac59e607457eb12354be1a7/core-1.1.0/jars/classes.jar!/" />
|
|
8
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/65aa9efd5ac59e607457eb12354be1a7/core-1.1.0/res" />
|
|
9
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/65aa9efd5ac59e607457eb12354be1a7/core-1.1.0/AndroidManifest.xml" />
|
|
10
|
-
</CLASSES>
|
|
11
|
-
<JAVADOC />
|
|
12
|
-
<SOURCES>
|
|
13
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/androidx.core/core/1.1.0/4ae37fad1fe95b42aa47a720908df37ba5d3c85e/core-1.1.0-sources.jar!/" />
|
|
14
|
-
</SOURCES>
|
|
15
|
-
</library>
|
|
16
|
-
</component>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: com.android.support:support-annotations:26.1.0">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-annotations/26.1.0/814258103cf26a15fcc26ecce35f5b7d24b73f8/support-annotations-26.1.0.jar!/" />
|
|
5
|
-
</CLASSES>
|
|
6
|
-
<JAVADOC>
|
|
7
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-annotations/26.1.0/2ec8f4c3e76181e132a8ef0e906723d5796b733e/support-annotations-26.1.0-javadoc.jar!/" />
|
|
8
|
-
</JAVADOC>
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-annotations/26.1.0/29ca6aaf2d4976c13dd7c836e91bd2a61b697bf3/support-annotations-26.1.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: com.android.support:support-compat:26.1.0@aar">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/87f1ad84ae34a1d126244bb7cc0bccca/support-compat-26.1.0/jars/classes.jar!/" />
|
|
5
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/87f1ad84ae34a1d126244bb7cc0bccca/support-compat-26.1.0/res" />
|
|
6
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/87f1ad84ae34a1d126244bb7cc0bccca/support-compat-26.1.0/AndroidManifest.xml" />
|
|
7
|
-
</CLASSES>
|
|
8
|
-
<JAVADOC />
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-compat/26.1.0/73bfdb5cca1949a51219d3676700996990ea3b52/support-compat-26.1.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: com.android.support:support-core-ui:26.1.0@aar">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/09cbeb253d89958f40dbad1c3c23b7f9/support-core-ui-26.1.0/jars/classes.jar!/" />
|
|
5
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/09cbeb253d89958f40dbad1c3c23b7f9/support-core-ui-26.1.0/res" />
|
|
6
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/09cbeb253d89958f40dbad1c3c23b7f9/support-core-ui-26.1.0/AndroidManifest.xml" />
|
|
7
|
-
</CLASSES>
|
|
8
|
-
<JAVADOC />
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-core-ui/26.1.0/4d52cef4a24bf9939de1d256ca9f0974c6e636a4/support-core-ui-26.1.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|
package/android/.idea/libraries/Gradle__com_android_support_support_core_utils_26_1_0_aar.xml
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: com.android.support:support-core-utils:26.1.0@aar">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/521f86fbee5497debda7c4669cab54fb/support-core-utils-26.1.0/jars/classes.jar!/" />
|
|
5
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/521f86fbee5497debda7c4669cab54fb/support-core-utils-26.1.0/res" />
|
|
6
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/521f86fbee5497debda7c4669cab54fb/support-core-utils-26.1.0/AndroidManifest.xml" />
|
|
7
|
-
</CLASSES>
|
|
8
|
-
<JAVADOC />
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-core-utils/26.1.0/2b0c3da7f80880bbf365452b354490a77f085c96/support-core-utils-26.1.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<component name="libraryTable">
|
|
2
|
-
<library name="Gradle: com.android.support:support-fragment:26.1.0@aar">
|
|
3
|
-
<CLASSES>
|
|
4
|
-
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/17ff386efeb937ccd6101e80ce985c70/support-fragment-26.1.0/jars/classes.jar!/" />
|
|
5
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/17ff386efeb937ccd6101e80ce985c70/support-fragment-26.1.0/res" />
|
|
6
|
-
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/17ff386efeb937ccd6101e80ce985c70/support-fragment-26.1.0/AndroidManifest.xml" />
|
|
7
|
-
</CLASSES>
|
|
8
|
-
<JAVADOC />
|
|
9
|
-
<SOURCES>
|
|
10
|
-
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-fragment/26.1.0/8279b00f5194701ff18363fa2958c5a26670b0ef/support-fragment-26.1.0-sources.jar!/" />
|
|
11
|
-
</SOURCES>
|
|
12
|
-
</library>
|
|
13
|
-
</component>
|