@jimrising/easymerchantsdk-react-native 1.4.1 → 1.4.3

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.
Files changed (62) hide show
  1. package/README.md +1 -1
  2. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/results.bin +1 -0
  3. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/reactlibrary/BuildConfig.dex +0 -0
  4. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/reactlibrary/RNEasymerchantsdkModule$1.dex +0 -0
  5. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/reactlibrary/RNEasymerchantsdkModule$2.dex +0 -0
  6. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/reactlibrary/RNEasymerchantsdkModule.dex +0 -0
  7. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/reactlibrary/RNEasymerchantsdkPackage.dex +0 -0
  8. package/android/build/.transforms/20e1216b87bd06eaab3c9e5c68d4267a/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  9. package/android/build/.transforms/e9a664a11ce12edf79cd87b1e07aa243/results.bin +1 -0
  10. package/android/build/.transforms/e9a664a11ce12edf79cd87b1e07aa243/transformed/classes/classes_dex/classes.dex +0 -0
  11. package/android/build/generated/source/buildConfig/debug/com/reactlibrary/BuildConfig.java +10 -0
  12. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +7 -0
  13. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  14. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  15. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  16. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  17. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  18. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  19. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -0
  20. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  21. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  22. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  23. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  24. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/reactlibrary/BuildConfig.class +0 -0
  25. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/reactlibrary/RNEasymerchantsdkModule$1.class +0 -0
  26. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/reactlibrary/RNEasymerchantsdkModule$2.class +0 -0
  27. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/reactlibrary/RNEasymerchantsdkModule.class +0 -0
  28. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/reactlibrary/RNEasymerchantsdkPackage.class +0 -0
  29. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +2 -0
  30. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +7 -0
  31. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +7 -0
  32. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  33. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  34. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/reactlibrary/BuildConfig.class +0 -0
  35. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/reactlibrary/RNEasymerchantsdkModule$1.class +0 -0
  36. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/reactlibrary/RNEasymerchantsdkModule$2.class +0 -0
  37. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/reactlibrary/RNEasymerchantsdkModule.class +0 -0
  38. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/reactlibrary/RNEasymerchantsdkPackage.class +0 -0
  39. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  40. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +1 -0
  41. package/android/build/outputs/logs/manifest-merger-debug-report.txt +17 -0
  42. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/RNEasymerchantsdkModule$1.class.uniqueId2 +0 -0
  43. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/RNEasymerchantsdkModule$2.class.uniqueId0 +0 -0
  44. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/RNEasymerchantsdkModule.class.uniqueId3 +0 -0
  45. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/RNEasymerchantsdkPackage.class.uniqueId1 +0 -0
  46. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  47. package/android/build.gradle +4 -1
  48. package/android/src/main/java/com/reactlibrary/RNEasymerchantsdkModule.java +157 -36
  49. package/android/src/main/java/com/reactlibrary/RNEasymerchantsdkPackage.java +45 -13
  50. package/ios/Classes/EasyMerchantSdk.m +2 -2
  51. package/ios/Pods/ViewControllers/AdditionalInfoVC.swift +52 -53
  52. package/ios/Pods/ViewControllers/BaseVC.swift +17 -6
  53. package/ios/Pods/ViewControllers/BillingInfoVC/BillingInfoVC.swift +84 -53
  54. package/ios/Pods/ViewControllers/CountryListVC.swift +20 -0
  55. package/ios/Pods/ViewControllers/CustomOverlay.swift +199 -0
  56. package/ios/Pods/ViewControllers/OTPVerificationVC.swift +109 -33
  57. package/ios/Pods/ViewControllers/PaymentDoneVC.swift +30 -30
  58. package/ios/Pods/ViewControllers/PaymentInformation/PaymentInfoVC.swift +1006 -145
  59. package/ios/Pods/ViewControllers/ThreeDSecurePaymentDoneVC.swift +300 -57
  60. package/ios/easymerchantsdk.podspec +1 -1
  61. package/ios/easymerchantsdk.storyboard +1235 -868
  62. package/package.json +1 -1
@@ -15,7 +15,7 @@ protocol BillingInfoVCDelegate: AnyObject {
15
15
 
16
16
  class BillingInfoVC: BaseVC {
17
17
 
18
- @IBOutlet weak var viewBillingInfo: UIView!
18
+ // @IBOutlet weak var viewBillingInfo: UIView!
19
19
  @IBOutlet weak var btnPrevious: UIButton!
20
20
  @IBOutlet weak var viewCountryList: UIView!
21
21
  @IBOutlet weak var tblViewCountryList: UITableView!
@@ -254,10 +254,10 @@ class BillingInfoVC: BaseVC {
254
254
  if let secondaryFontColor = UserStoreSingleton.shared.secondary_font_col,
255
255
  let placeholderColor = UIColor(hex: secondaryFontColor) {
256
256
  lblEasyMerchant.textColor = placeholderColor
257
- viewBillingInfo.layer.borderColor = placeholderColor.cgColor
257
+ // viewBillingInfo.layer.borderColor = placeholderColor.cgColor
258
258
  }
259
259
  else {
260
- viewBillingInfo.layer.borderColor = UIColor.systemGray.cgColor
260
+ // viewBillingInfo.layer.borderColor = UIColor.systemGray.cgColor
261
261
  }
262
262
 
263
263
  if let borderRadiusString = UserStoreSingleton.shared.border_radious,
@@ -265,17 +265,17 @@ class BillingInfoVC: BaseVC {
265
265
  btnNext.layer.cornerRadius = CGFloat(borderRadius) // Set corner radius
266
266
  btnPrevious.layer.cornerRadius = CGFloat(borderRadius)
267
267
  btnPrevious.layer.borderWidth = 1
268
- viewBillingInfo.layer.cornerRadius = CGFloat(borderRadius)
269
- viewBillingInfo.layer.borderWidth = 1
268
+ // viewBillingInfo.layer.cornerRadius = CGFloat(borderRadius)
269
+ // viewBillingInfo.layer.borderWidth = 1
270
270
  } else {
271
271
  btnNext.layer.cornerRadius = 8 // Default value
272
272
  btnPrevious.layer.cornerRadius = 8
273
- viewBillingInfo.layer.borderWidth = 1
274
- viewBillingInfo.layer.cornerRadius = 8
273
+ // viewBillingInfo.layer.borderWidth = 1
274
+ // viewBillingInfo.layer.cornerRadius = 8
275
275
  }
276
276
  btnNext.layer.masksToBounds = true // Ensure the corners are clipped properly
277
277
  btnPrevious.layer.masksToBounds = true
278
- viewBillingInfo.layer.masksToBounds = true
278
+ // viewBillingInfo.layer.masksToBounds = true
279
279
 
280
280
  if let primaryFontColor = UserStoreSingleton.shared.primary_font_col,
281
281
  let uiColor = UIColor(hex: primaryFontColor) {
@@ -811,6 +811,7 @@ class BillingInfoVC: BaseVC {
811
811
  vc.grailPayAccountID = grailPayAccountID
812
812
  vc.selectedGrailPayAccountType = selectedGrailPayAccountType
813
813
  vc.selectedGrailPayAccountName = selectedGrailPayAccountName
814
+ vc.userEmail = userEmail
814
815
  navigationController?.pushViewController(vc, animated: true)
815
816
  }
816
817
  else if !isAdditionalVisible && isSavedForFuture {
@@ -831,6 +832,7 @@ class BillingInfoVC: BaseVC {
831
832
  vc.grailPayAccountID = grailPayAccountID
832
833
  vc.selectedGrailPayAccountType = selectedGrailPayAccountType
833
834
  vc.selectedGrailPayAccountName = selectedGrailPayAccountName
835
+ vc.userEmail = userEmail
834
836
  navigationController?.pushViewController(vc, animated: true)
835
837
  }
836
838
  else {
@@ -1008,19 +1010,19 @@ class BillingInfoVC: BaseVC {
1008
1010
  // Conditionally pass raw FieldItem array
1009
1011
  paymentDoneVC.visibility = self.visibility
1010
1012
 
1011
- if self.visibility?.billing == true {
1013
+ // if self.visibility?.billing == true {
1012
1014
  paymentDoneVC.billingInfoData = self.billingInfo
1013
1015
  var billingDict: [String: Any] = [:]
1014
1016
  self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1015
1017
  paymentDoneVC.billingInfo = billingDict
1016
- }
1018
+ // }
1017
1019
 
1018
- if self.visibility?.additional == true {
1020
+ // if self.visibility?.additional == true {
1019
1021
  paymentDoneVC.additionalInfoData = self.additionalInfo
1020
1022
  var additionalDict: [String: Any] = [:]
1021
1023
  self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1022
1024
  paymentDoneVC.additionalInfo = additionalDict
1023
- }
1025
+ // }
1024
1026
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1025
1027
  }
1026
1028
  }
@@ -1193,20 +1195,21 @@ class BillingInfoVC: BaseVC {
1193
1195
  // Pass billing and additional info
1194
1196
  // Conditionally pass raw FieldItem array
1195
1197
  paymentDoneVC.visibility = self.visibility
1198
+ paymentDoneVC.amount = self.amount
1196
1199
 
1197
- if self.visibility?.billing == true {
1200
+ // if self.visibility?.billing == true {
1198
1201
  paymentDoneVC.billingInfoData = self.billingInfo
1199
1202
  var billingDict: [String: Any] = [:]
1200
1203
  self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1201
1204
  paymentDoneVC.billingInfo = billingDict
1202
- }
1205
+ // }
1203
1206
 
1204
- if self.visibility?.additional == true {
1207
+ // if self.visibility?.additional == true {
1205
1208
  paymentDoneVC.additionalInfoData = self.additionalInfo
1206
1209
  var additionalDict: [String: Any] = [:]
1207
1210
  self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1208
1211
  paymentDoneVC.additionalInfo = additionalDict
1209
- }
1212
+ // }
1210
1213
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1211
1214
  }
1212
1215
  }
@@ -1369,20 +1372,21 @@ class BillingInfoVC: BaseVC {
1369
1372
  // Pass billing and additional info
1370
1373
  // Conditionally pass raw FieldItem array
1371
1374
  paymentDoneVC.visibility = self.visibility
1375
+ paymentDoneVC.amount = self.amount
1372
1376
 
1373
- if self.visibility?.billing == true {
1377
+ // if self.visibility?.billing == true {
1374
1378
  paymentDoneVC.billingInfoData = self.billingInfo
1375
1379
  var billingDict: [String: Any] = [:]
1376
1380
  self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1377
1381
  paymentDoneVC.billingInfo = billingDict
1378
- }
1382
+ // }
1379
1383
 
1380
- if self.visibility?.additional == true {
1384
+ // if self.visibility?.additional == true {
1381
1385
  paymentDoneVC.additionalInfoData = self.additionalInfo
1382
1386
  var additionalDict: [String: Any] = [:]
1383
1387
  self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1384
1388
  paymentDoneVC.additionalInfo = additionalDict
1385
- }
1389
+ // }
1386
1390
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1387
1391
  }
1388
1392
  }
@@ -1552,19 +1556,19 @@ class BillingInfoVC: BaseVC {
1552
1556
  // Conditionally pass raw FieldItem array
1553
1557
  paymentDoneVC.visibility = self.visibility
1554
1558
 
1555
- if self.visibility?.billing == true {
1559
+ // if self.visibility?.billing == true {
1556
1560
  paymentDoneVC.billingInfoData = self.billingInfo
1557
1561
  var billingDict: [String: Any] = [:]
1558
1562
  self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1559
1563
  paymentDoneVC.billingInfo = billingDict
1560
- }
1564
+ // }
1561
1565
 
1562
- if self.visibility?.additional == true {
1566
+ // if self.visibility?.additional == true {
1563
1567
  paymentDoneVC.additionalInfoData = self.additionalInfo
1564
1568
  var additionalDict: [String: Any] = [:]
1565
1569
  self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1566
1570
  paymentDoneVC.additionalInfo = additionalDict
1567
- }
1571
+ // }
1568
1572
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1569
1573
  }
1570
1574
  }
@@ -1730,19 +1734,19 @@ class BillingInfoVC: BaseVC {
1730
1734
  // Conditionally pass raw FieldItem array
1731
1735
  paymentDoneVC.visibility = self.visibility
1732
1736
 
1733
- if self.visibility?.billing == true {
1737
+ // if self.visibility?.billing == true {
1734
1738
  paymentDoneVC.billingInfoData = self.billingInfo
1735
1739
  var billingDict: [String: Any] = [:]
1736
1740
  self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1737
1741
  paymentDoneVC.billingInfo = billingDict
1738
- }
1742
+ // }
1739
1743
 
1740
- if self.visibility?.additional == true {
1744
+ // if self.visibility?.additional == true {
1741
1745
  paymentDoneVC.additionalInfoData = self.additionalInfo
1742
1746
  var additionalDict: [String: Any] = [:]
1743
1747
  self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1744
1748
  paymentDoneVC.additionalInfo = additionalDict
1745
- }
1749
+ // }
1746
1750
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1747
1751
  }
1748
1752
  }
@@ -1893,13 +1897,19 @@ class BillingInfoVC: BaseVC {
1893
1897
  // Conditionally pass raw FieldItem array
1894
1898
  paymentDoneVC.visibility = self.visibility
1895
1899
 
1896
- if self.visibility?.billing == true {
1897
- paymentDoneVC.billingInfoData = self.billingInfo
1898
- var billingDict: [String: Any] = [:]
1899
- self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1900
- paymentDoneVC.billingInfo = billingDict
1901
- }
1902
-
1900
+ // if self.visibility?.billing == true {
1901
+ paymentDoneVC.billingInfoData = self.billingInfo
1902
+ var billingDict: [String: Any] = [:]
1903
+ self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
1904
+ paymentDoneVC.billingInfo = billingDict
1905
+ // }
1906
+
1907
+ // if self.visibility?.additional == true {
1908
+ paymentDoneVC.additionalInfoData = self.additionalInfo
1909
+ var additionalDict: [String: Any] = [:]
1910
+ self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
1911
+ paymentDoneVC.additionalInfo = additionalDict
1912
+ // }
1903
1913
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
1904
1914
  }
1905
1915
  }
@@ -2054,12 +2064,19 @@ class BillingInfoVC: BaseVC {
2054
2064
  // Conditionally pass raw FieldItem array
2055
2065
  paymentDoneVC.visibility = self.visibility
2056
2066
 
2057
- if self.visibility?.billing == true {
2058
- paymentDoneVC.billingInfoData = self.billingInfo
2059
- var billingDict: [String: Any] = [:]
2060
- self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2061
- paymentDoneVC.billingInfo = billingDict
2062
- }
2067
+ // if self.visibility?.billing == true {
2068
+ paymentDoneVC.billingInfoData = self.billingInfo
2069
+ var billingDict: [String: Any] = [:]
2070
+ self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2071
+ paymentDoneVC.billingInfo = billingDict
2072
+ // }
2073
+
2074
+ // if self.visibility?.additional == true {
2075
+ paymentDoneVC.additionalInfoData = self.additionalInfo
2076
+ var additionalDict: [String: Any] = [:]
2077
+ self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
2078
+ paymentDoneVC.additionalInfo = additionalDict
2079
+ // }
2063
2080
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
2064
2081
  }
2065
2082
  }
@@ -2223,12 +2240,19 @@ class BillingInfoVC: BaseVC {
2223
2240
  // Conditionally pass raw FieldItem array
2224
2241
  paymentDoneVC.visibility = self.visibility
2225
2242
 
2226
- if self.visibility?.billing == true {
2227
- paymentDoneVC.billingInfoData = self.billingInfo
2228
- var billingDict: [String: Any] = [:]
2229
- self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2230
- paymentDoneVC.billingInfo = billingDict
2231
- }
2243
+ // if self.visibility?.billing == true {
2244
+ paymentDoneVC.billingInfoData = self.billingInfo
2245
+ var billingDict: [String: Any] = [:]
2246
+ self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2247
+ paymentDoneVC.billingInfo = billingDict
2248
+ // }
2249
+
2250
+ // if self.visibility?.additional == true {
2251
+ paymentDoneVC.additionalInfoData = self.additionalInfo
2252
+ var additionalDict: [String: Any] = [:]
2253
+ self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
2254
+ paymentDoneVC.additionalInfo = additionalDict
2255
+ // }
2232
2256
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
2233
2257
  }
2234
2258
  }
@@ -2385,12 +2409,19 @@ class BillingInfoVC: BaseVC {
2385
2409
  // Conditionally pass raw FieldItem array
2386
2410
  paymentDoneVC.visibility = self.visibility
2387
2411
 
2388
- if self.visibility?.billing == true {
2389
- paymentDoneVC.billingInfoData = self.billingInfo
2390
- var billingDict: [String: Any] = [:]
2391
- self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2392
- paymentDoneVC.billingInfo = billingDict
2393
- }
2412
+ // if self.visibility?.billing == true {
2413
+ paymentDoneVC.billingInfoData = self.billingInfo
2414
+ var billingDict: [String: Any] = [:]
2415
+ self.billingInfo?.forEach { billingDict[$0.name] = $0.value }
2416
+ paymentDoneVC.billingInfo = billingDict
2417
+ // }
2418
+
2419
+ // if self.visibility?.additional == true {
2420
+ paymentDoneVC.additionalInfoData = self.additionalInfo
2421
+ var additionalDict: [String: Any] = [:]
2422
+ self.additionalInfo?.forEach { additionalDict[$0.name] = $0.value }
2423
+ paymentDoneVC.additionalInfo = additionalDict
2424
+ // }
2394
2425
  self.navigationController?.pushViewController(paymentDoneVC, animated: true)
2395
2426
  }
2396
2427
  }
@@ -55,6 +55,26 @@ class CountryListVC: UIViewController {
55
55
  searchBarCountry.searchTextField.font = UIFont.systemFont(ofSize: fontSize)
56
56
  }
57
57
 
58
+ if let secondaryFontColor = UserStoreSingleton.shared.secondary_font_col,
59
+ let uiColor = UIColor(hex: secondaryFontColor) {
60
+ // Set placeholder text color
61
+ let placeholderAttributes: [NSAttributedString.Key: Any] = [
62
+ .foregroundColor: uiColor
63
+ ]
64
+ searchBarCountry.searchTextField.attributedPlaceholder = NSAttributedString(
65
+ string: searchBarCountry.searchTextField.placeholder ?? "Search here",
66
+ attributes: placeholderAttributes
67
+ )
68
+ // Set search icon color
69
+ searchBarCountry.searchTextField.leftView?.tintColor = uiColor
70
+ }
71
+
72
+ if let searchBar = self.searchBarCountry {
73
+ searchBar.backgroundImage = UIImage() // Removes background line
74
+ searchBar.layer.borderWidth = 0
75
+ searchBar.layer.borderColor = UIColor.clear.cgColor
76
+ }
77
+
58
78
  tblViewCountry.delegate = self
59
79
  tblViewCountry.dataSource = self
60
80
 
@@ -0,0 +1,199 @@
1
+ ////
2
+ //// CustomOverlay.swift
3
+ //// EasyPay
4
+ ////
5
+ //// Created by Mony's Mac on 21/03/25.
6
+ ////
7
+ //
8
+ ////import BlinkCard
9
+ //
10
+ //protocol CustomOverlayDelegate: AnyObject {
11
+ // func didFinishScanningCard(cardNumber: String, expiryDate: String, cvv: String, nameOnCard: String)
12
+ //}
13
+ //
14
+ //class CustomOverlay: MBCCustomOverlayViewController, MBCScanningRecognizerRunnerViewControllerDelegate,
15
+ // MBCFirstSideFinishedRecognizerRunnerViewControllerDelegate {
16
+ //
17
+ // @IBOutlet weak var tooltipLabel: UILabel!
18
+ // @IBOutlet weak var centerView: UIView!
19
+ // @IBOutlet weak var lblScanCardCount: UILabel!
20
+ // @IBOutlet weak var btnRotate: UIButton!
21
+ // @IBOutlet weak var imgProcessing: UIImageView!
22
+ //
23
+ // var currentScanStep = 1 // Start with 1 for the first scan step
24
+ //
25
+ // var blinkCardEditScreen: MBCBlinkCardEditViewController?
26
+ // var blinkcardNavigationViewController: MBCBlinkCardEditNavigationController?
27
+ // var blinkCardRecognizerResult: MBCBlinkCardRecognizerResult?
28
+ //
29
+ // static func initFromStoryboard() -> CustomOverlay {
30
+ // let viewController = UIStoryboard(name: "easymerchantsdk", bundle: .easyPayBundle).instantiateViewController(withIdentifier: "CustomOverlay")
31
+ //
32
+ // guard let customOverlay = viewController as? CustomOverlay else {
33
+ // fatalError("CustomOverlay should always be an instance of \(CustomOverlay.self) here because we instantiate it from the Storyboard")
34
+ // }
35
+ //
36
+ // return customOverlay
37
+ // }
38
+ //
39
+ // weak var delegate: CustomOverlayDelegate?
40
+ //
41
+ // override func viewDidLoad() {
42
+ // super.viewDidLoad()
43
+ //
44
+ // super.scanningRecognizerRunnerViewControllerDelegate = self
45
+ // super.metadataDelegates.firstSideFinishedRecognizerRunnerViewControllerDelegate = self
46
+ //
47
+ // lblScanCardCount.text = "Scan Card (1/2)"
48
+ //
49
+ // centerView.layer.borderColor = UIColor.white.cgColor
50
+ // centerView.layer.borderWidth = 2.0
51
+ // centerView.layer.cornerRadius = 8.0
52
+ //
53
+ // imgProcessing.image = UIImage(systemName: "exclamationmark.circle")
54
+ // tooltipLabel.text = "Place the front side of your card inside the frame"
55
+ // }
56
+ //
57
+ // func updateScanProgress() {
58
+ // if currentScanStep < 2 {
59
+ // currentScanStep += 1
60
+ // lblScanCardCount.text = "Scan Card (\(currentScanStep)/2)"
61
+ // }
62
+ // }
63
+ //
64
+ // func showBorderColorForOneSeconds() {
65
+ // centerView.layer.borderColor = UIColor.green.cgColor
66
+ // centerView.layer.borderWidth = 2.0
67
+ // centerView.layer.cornerRadius = 8.0
68
+ //
69
+ // DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
70
+ // self.centerView.layer.borderColor = UIColor.white.cgColor
71
+ // self.centerView.layer.borderWidth = 2.0
72
+ // }
73
+ // }
74
+ //
75
+ // func recognizerRunnerViewControllerDidFinishScanning(_ recognizerRunnerViewController: UIViewController & MBCRecognizerRunnerViewController, state: MBCRecognizerResultState) {
76
+ // if state == .valid {
77
+ // recognizerRunnerViewController.pauseScanning()
78
+ //
79
+ // DispatchQueue.main.async {
80
+ // self.showBorderColorForOneSeconds()
81
+ //
82
+ // // Show loader while processing final results
83
+ // self.imgProcessing.image = UIImage(named: "loaderImage")
84
+ // self.tooltipLabel.text = "Keep it in frame while we’re processing..."
85
+ // self.startRotationAnimation(on: self.imgProcessing)
86
+ //
87
+ // for recognizer in self.recognizerCollection.recognizerList where recognizer.baseResult?.resultState == .valid {
88
+ // if recognizer is MBCBlinkCardRecognizer {
89
+ // let blinkCardRecognizer = recognizer as? MBCBlinkCardRecognizer
90
+ // self.blinkCardRecognizerResult = blinkCardRecognizer?.result
91
+ // }
92
+ // }
93
+ //
94
+ // self.imgProcessing.image = UIImage(named: "check")
95
+ // self.tooltipLabel.text = "Done"
96
+ // self.stopRotationAnimation(on: self.imgProcessing)
97
+ //
98
+ // guard let blinkCardResult = self.blinkCardRecognizerResult else { return }
99
+ //
100
+ // // Extract card details
101
+ // let cardNumber = blinkCardResult.cardNumber
102
+ // let expiryDate = "\(blinkCardResult.expiryDate.month)/\(blinkCardResult.expiryDate.year)"
103
+ // let cvv = blinkCardResult.cvv
104
+ // let nameOnCard = blinkCardResult.owner
105
+ //
106
+ // // Pass data to delegate
107
+ // self.delegate?.didFinishScanningCard(cardNumber: cardNumber, expiryDate: expiryDate, cvv: cvv, nameOnCard: nameOnCard)
108
+ //
109
+ // // Dismiss the scanner
110
+ // recognizerRunnerViewController.dismiss(animated: true, completion: nil)
111
+ // }
112
+ // }
113
+ // }
114
+ //
115
+ // func recognizerRunnerViewControllerDidFinishRecognition(ofFirstSide recognizerRunnerViewController: UIViewController & MBCRecognizerRunnerViewController) {
116
+ // DispatchQueue.main.async {
117
+ // // Show loader image during scanning
118
+ // self.imgProcessing.image = UIImage(named: "loaderImage", in: .easyPayBundle, with: nil)
119
+ // self.tooltipLabel.text = "Keep it in frame while we’re processing..."
120
+ // self.startRotationAnimation(on: self.imgProcessing)
121
+ //
122
+ // self.updateScanProgress()
123
+ // self.showBorderColorForOneSeconds()
124
+ //
125
+ // // Update tooltip and show check image after completing the first side
126
+ // DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
127
+ // self.imgProcessing.image = UIImage(named: "check", in: .easyPayBundle, with: nil)
128
+ // self.tooltipLabel.text = "Done"
129
+ // self.stopRotationAnimation(on: self.imgProcessing)
130
+ //
131
+ // DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
132
+ // self.imgProcessing.image = UIImage(systemName: "exclamationmark.circle")
133
+ // self.tooltipLabel.text = "Place the back side of your card inside the frame"
134
+ // self.stopRotationAnimation(on: self.imgProcessing)
135
+ // }
136
+ // }
137
+ // }
138
+ // }
139
+ //
140
+ // func startRotationAnimation(on imageView: UIImageView) {
141
+ // let rotationAnimation = CABasicAnimation(keyPath: "transform.rotation")
142
+ // rotationAnimation.fromValue = 0
143
+ // rotationAnimation.toValue = CGFloat.pi * 2
144
+ // rotationAnimation.duration = 1.0 // Duration of one full rotation
145
+ // rotationAnimation.repeatCount = Float.infinity // Repeat indefinitely
146
+ // imageView.layer.add(rotationAnimation, forKey: "rotationAnimation")
147
+ // }
148
+ //
149
+ // func stopRotationAnimation(on imageView: UIImageView) {
150
+ // imageView.layer.removeAnimation(forKey: "rotationAnimation")
151
+ // }
152
+ //
153
+ // @IBAction func didTapClose(_ sender: Any) {
154
+ // self.recognizerRunnerViewController?.overlayViewControllerWillCloseCamera(self)
155
+ // self.dismiss(animated: true, completion: nil)
156
+ // }
157
+ //
158
+ // func showEditScreen(blinkCardRecognizerResult: MBCBlinkCardRecognizerResult) {
159
+ // blinkCardEditScreen = MBCBlinkCardEditViewController(blinkCardRecognizerResult: blinkCardRecognizerResult, fieldConfiguration: MBCBlinkCardEditFieldConfiguration(), delegate: self)
160
+ // blinkcardNavigationViewController = MBCBlinkCardEditNavigationController(rootViewController: blinkCardEditScreen!)
161
+ // self.present(blinkcardNavigationViewController!, animated: true, completion: nil)
162
+ // }
163
+ //
164
+ // @IBAction func actionBtnRotate(_ sender: UIButton) {
165
+ // UIView.animate(withDuration: 0.5, animations: {
166
+ // // Rotate the centerView by 180 degrees
167
+ // self.centerView.transform = self.centerView.transform.rotated(by: .pi/2)
168
+ // })
169
+ // }
170
+ //
171
+ //}
172
+ //
173
+ //extension CustomOverlay: MBCBlinkCardEditViewControllerDelegate {
174
+ // func blinkCardEditViewControllerDidFinishEditing(_ blinkCardEditViewController: MBCBlinkCardEditViewController, editResult: MBCBlinkCardEditResult) {
175
+ // self.recognizerRunnerViewController?.pauseScanning()
176
+ //
177
+ // DispatchQueue.main.async {
178
+ // let alertController: UIAlertController = UIAlertController.init(title: "BlinkCard Edit Results", message: editResult.description, preferredStyle: .alert)
179
+ //
180
+ // let okAction: UIAlertAction = UIAlertAction.init(title: "OK", style: .default, handler: { (action) -> Void in
181
+ // self.blinkCardEditScreen?.dismiss(animated: true, completion: nil)
182
+ // self.dismiss(animated: true, completion: nil)
183
+ // })
184
+ // alertController.addAction(okAction)
185
+ // blinkCardEditViewController.present(alertController, animated: true, completion: nil)
186
+ // }
187
+ // }
188
+ //
189
+ // func blinkCardEditViewControllerDidTapClose(_ blinkCardEditViewController: MBCBlinkCardEditViewController) {
190
+ // DispatchQueue.main.async {
191
+ // blinkCardEditViewController.dismiss(animated: true, completion: nil)
192
+ // }
193
+ // }
194
+ //}
195
+ //
196
+ //
197
+ //
198
+ //
199
+ //