@primer-io/react-native 2.27.1 → 2.27.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.
@@ -154,7 +154,7 @@ dependencies {
154
154
  api 'com.facebook.react:react-native:+'
155
155
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
156
156
  implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.1"
157
- implementation 'io.primer:android:2.31.0'
157
+ implementation 'io.primer:android:2.32.4'
158
158
  testImplementation 'io.mockk:mockk:1.13.11'
159
159
  testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.2'
160
160
  testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.2'
@@ -7,101 +7,113 @@
7
7
 
8
8
  import Foundation
9
9
  import PrimerSDK
10
+ import React
10
11
 
11
12
  @objc(RNTPrimerHeadlessUniversalCheckoutAssetsManager)
12
13
  class RNTPrimerHeadlessUniversalCheckoutAssetsManager: RCTEventEmitter {
13
14
 
14
- override func supportedEvents() -> [String]! {
15
- return []
15
+ override func supportedEvents() -> [String]! {
16
+ return []
17
+ }
18
+
19
+ override class func requiresMainQueueSetup() -> Bool {
20
+ return true
21
+ }
22
+
23
+ @objc
24
+ func getCardNetworkImage(
25
+ _ cardNetworkStr: String,
26
+ resolver: RCTPromiseResolveBlock,
27
+ rejecter: RCTPromiseRejectBlock
28
+ ) {
29
+ do {
30
+
31
+ guard let cardNetwork = CardNetwork(rawValue: cardNetworkStr) else {
32
+ let err = RNTNativeError(
33
+ errorId: "native-ios",
34
+ errorDescription: "Failed to find asset of \(cardNetworkStr).",
35
+ recoverySuggestion: nil)
36
+ throw err
37
+ }
38
+
39
+ guard
40
+ let cardNetworkImage = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager
41
+ .getCardNetworkImage(for: cardNetwork)
42
+ else {
43
+ let err = RNTNativeError(
44
+ errorId: "native-ios",
45
+ errorDescription: "Failed to find asset of \(cardNetworkStr).",
46
+ recoverySuggestion: nil)
47
+ throw err
48
+ }
49
+
50
+ let localUrl = try cardNetworkImage.store(withName: cardNetwork.rawValue)
51
+ resolver(["cardNetworkImageURL": localUrl.absoluteString])
52
+
53
+ } catch {
54
+ rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
16
55
  }
17
-
18
- override class func requiresMainQueueSetup() -> Bool {
19
- return true
20
- }
21
-
22
- @objc
23
- func getCardNetworkImage(
24
- _ cardNetworkStr: String,
25
- resolver: RCTPromiseResolveBlock,
26
- rejecter: RCTPromiseRejectBlock
27
- ) {
28
- do {
29
-
30
- guard let cardNetwork = CardNetwork(rawValue: cardNetworkStr) else {
31
- let err = RNTNativeError(
32
- errorId: "native-ios",
33
- errorDescription: "Failed to find asset of \(cardNetworkStr).",
34
- recoverySuggestion: nil)
35
- throw err
36
- }
37
-
38
- guard let cardNetworkImage = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager.getCardNetworkImage(for: cardNetwork) else {
39
- let err = RNTNativeError(
40
- errorId: "native-ios",
41
- errorDescription: "Failed to find asset of \(cardNetworkStr).",
42
- recoverySuggestion: nil)
43
- throw err
44
- }
45
-
46
- let localUrl = try cardNetworkImage.store(withName: cardNetwork.rawValue)
47
- resolver(["cardNetworkImageURL": localUrl.absoluteString])
48
-
49
- } catch {
50
- rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
51
- }
56
+ }
57
+
58
+ @objc
59
+ func getPaymentMethodAsset(
60
+ _ paymentMethodType: String,
61
+ resolver: RCTPromiseResolveBlock,
62
+ rejecter: RCTPromiseRejectBlock
63
+ ) {
64
+ do {
65
+ guard
66
+ let paymentMethodAsset = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager
67
+ .getPaymentMethodAsset(for: paymentMethodType)
68
+ else {
69
+ let err = RNTNativeError(
70
+ errorId: "native-ios",
71
+ errorDescription: "Failed to find asset of \(paymentMethodType) for this session",
72
+ recoverySuggestion: nil)
73
+ throw err
74
+ }
75
+
76
+ if let rntPaymentMethodAsset = try? RNTPrimerPaymentMethodAsset(
77
+ primerPaymentMethodAsset: paymentMethodAsset
78
+ ).toJsonObject() {
79
+ resolver(["paymentMethodAsset": rntPaymentMethodAsset])
80
+ } else {
81
+ let err = RNTNativeError(
82
+ errorId: "native-ios",
83
+ errorDescription: "Failed to create the RNTPrimerPaymentMethodAsset",
84
+ recoverySuggestion: nil)
85
+ throw err
86
+ }
87
+
88
+ } catch {
89
+ rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
52
90
  }
53
-
54
- @objc
55
- func getPaymentMethodAsset(
56
- _ paymentMethodType: String,
57
- resolver: RCTPromiseResolveBlock,
58
- rejecter: RCTPromiseRejectBlock
59
- ) {
60
- do {
61
- guard let paymentMethodAsset = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager.getPaymentMethodAsset(for: paymentMethodType) else {
62
- let err = RNTNativeError(
63
- errorId: "native-ios",
64
- errorDescription: "Failed to find asset of \(paymentMethodType) for this session",
65
- recoverySuggestion: nil)
66
- throw err
67
- }
68
-
69
- if let rntPaymentMethodAsset = try? RNTPrimerPaymentMethodAsset(primerPaymentMethodAsset: paymentMethodAsset).toJsonObject() {
70
- resolver(["paymentMethodAsset": rntPaymentMethodAsset])
71
- } else {
72
- let err = RNTNativeError(
73
- errorId: "native-ios",
74
- errorDescription: "Failed to create the RNTPrimerPaymentMethodAsset",
75
- recoverySuggestion: nil)
76
- throw err
77
- }
78
-
79
- } catch {
80
- rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
81
- }
82
- }
83
-
84
- @objc
85
- func getPaymentMethodAssets(
86
- _ resolver: RCTPromiseResolveBlock,
87
- rejecter: RCTPromiseRejectBlock
88
- ) {
89
- do {
90
- let paymentMethodAssets = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager.getPaymentMethodAssets()
91
-
92
- let rntPaymentMethodAssets = paymentMethodAssets.compactMap({ try? RNTPrimerPaymentMethodAsset(primerPaymentMethodAsset: $0).toJsonObject() })
93
- guard !rntPaymentMethodAssets.isEmpty else {
94
- let err = RNTNativeError(
95
- errorId: "native-ios",
96
- errorDescription: "Failed to find assets for this session",
97
- recoverySuggestion: nil)
98
- throw err
99
- }
100
-
101
- resolver(["paymentMethodAssets": rntPaymentMethodAssets])
102
-
103
- } catch {
104
- rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
105
- }
91
+ }
92
+
93
+ @objc
94
+ func getPaymentMethodAssets(
95
+ _ resolver: RCTPromiseResolveBlock,
96
+ rejecter: RCTPromiseRejectBlock
97
+ ) {
98
+ do {
99
+ let paymentMethodAssets = try PrimerSDK.PrimerHeadlessUniversalCheckout.AssetsManager
100
+ .getPaymentMethodAssets()
101
+
102
+ let rntPaymentMethodAssets = paymentMethodAssets.compactMap({
103
+ try? RNTPrimerPaymentMethodAsset(primerPaymentMethodAsset: $0).toJsonObject()
104
+ })
105
+ guard !rntPaymentMethodAssets.isEmpty else {
106
+ let err = RNTNativeError(
107
+ errorId: "native-ios",
108
+ errorDescription: "Failed to find assets for this session",
109
+ recoverySuggestion: nil)
110
+ throw err
111
+ }
112
+
113
+ resolver(["paymentMethodAssets": rntPaymentMethodAssets])
114
+
115
+ } catch {
116
+ rejecter(error.rnError["errorId"]!, error.rnError["description"], error)
106
117
  }
118
+ }
107
119
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primer-io/react-native",
3
- "version": "2.27.1",
3
+ "version": "2.27.2",
4
4
  "description": "Primer SDK for RN",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -16,5 +16,5 @@ Pod::Spec.new do |s|
16
16
  s.source_files = "ios/**/*.{h,m,mm,swift}"
17
17
 
18
18
  s.dependency "React-Core"
19
- s.dependency "PrimerSDK", "2.31.3"
19
+ s.dependency "PrimerSDK", "2.32.1"
20
20
  end