@primer-io/react-native 2.45.0 → 2.46.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerSettingsRN.kt +1 -2
- package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt +10 -3
- package/android/src/test/java/com/primerioreactnative/extensions/PrimerGooglePayOptionsRNTest.kt +68 -0
- package/ios/Sources/DataModels/PrimerSettings+Extensions.swift +16 -2
- package/ios/Sources/RNTPrimer.swift +17 -11
- package/ios/Sources/version.swift +1 -1
- package/lib/module/RNPrimer.js.map +1 -1
- package/lib/module/utils/index.js +0 -8
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/src/RNPrimer.d.ts +2 -1
- package/lib/typescript/src/RNPrimer.d.ts.map +1 -1
- package/lib/typescript/src/models/PrimerSettings.d.ts +5 -2
- package/lib/typescript/src/models/PrimerSettings.d.ts.map +1 -1
- package/lib/typescript/src/utils/index.d.ts +0 -1
- package/lib/typescript/src/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/primer-io-react-native.podspec +1 -1
- package/src/RNPrimer.ts +2 -1
- package/src/models/PrimerSettings.ts +6 -2
- package/src/utils/index.ts +0 -9
package/android/build.gradle
CHANGED
|
@@ -133,7 +133,7 @@ dependencies {
|
|
|
133
133
|
implementation 'com.facebook.react:react-native:+'
|
|
134
134
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
135
135
|
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.3"
|
|
136
|
-
implementation 'io.primer:android:2.
|
|
136
|
+
implementation 'io.primer:android:2.52.0'
|
|
137
137
|
testImplementation 'io.mockk:mockk:1.14.2'
|
|
138
138
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.2'
|
|
139
139
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.2'
|
|
@@ -156,8 +156,7 @@ data class PrimerThreeDsAndroidOptionsRN(val threeDsAppRequestorUrl: String? = n
|
|
|
156
156
|
@Serializable
|
|
157
157
|
data class PrimerGooglePayOptionsRN(
|
|
158
158
|
var merchantName: String? = null,
|
|
159
|
-
var
|
|
160
|
-
listOf("AMEX", "DISCOVER", "JCB", "MASTERCARD", "VISA"),
|
|
159
|
+
var allowedCardTypes: List<String>? = null,
|
|
161
160
|
var buttonStyle: GooglePayButtonStyle = GooglePayButtonStyle.BLACK,
|
|
162
161
|
@SerialName("isCaptureBillingAddressEnabled")
|
|
163
162
|
var captureBillingAddress: Boolean = false,
|
package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt
CHANGED
|
@@ -29,10 +29,16 @@ fun PrimerPaymentMethodOptionsRN.toPrimerPaymentMethodOptions(context: Context)
|
|
|
29
29
|
stripeOptions.toPrimerStripeOptions(context),
|
|
30
30
|
)
|
|
31
31
|
|
|
32
|
-
fun PrimerGooglePayOptionsRN.toPrimerGooglePayOptions()
|
|
33
|
-
|
|
32
|
+
fun PrimerGooglePayOptionsRN.toPrimerGooglePayOptions(): PrimerGooglePayOptions {
|
|
33
|
+
val knownCardTypes = setOf("credit", "debit", "prepaid")
|
|
34
|
+
val cardTypes =
|
|
35
|
+
allowedCardTypes
|
|
36
|
+
?.filter { it in knownCardTypes }
|
|
37
|
+
?.takeIf { it.isNotEmpty() }
|
|
38
|
+
return PrimerGooglePayOptions(
|
|
34
39
|
merchantName = merchantName,
|
|
35
|
-
|
|
40
|
+
allowCreditCards = cardTypes?.contains("credit") ?: true,
|
|
41
|
+
allowPrepaidCards = cardTypes?.contains("prepaid") ?: true,
|
|
36
42
|
buttonStyle = buttonStyle,
|
|
37
43
|
captureBillingAddress = captureBillingAddress,
|
|
38
44
|
existingPaymentMethodRequired = existingPaymentMethodRequired,
|
|
@@ -41,6 +47,7 @@ fun PrimerGooglePayOptionsRN.toPrimerGooglePayOptions() =
|
|
|
41
47
|
emailAddressRequired = emailAddressRequired,
|
|
42
48
|
buttonOptions = buttonOptions?.toPrimerGooglePayButtonOptions() ?: GooglePayButtonOptions(),
|
|
43
49
|
)
|
|
50
|
+
}
|
|
44
51
|
|
|
45
52
|
fun PrimerGoogleShippingAddressParametersRN.toPrimerGoogleShippingAddressParameters() =
|
|
46
53
|
PrimerGoogleShippingAddressParameters(phoneNumberRequired)
|
package/android/src/test/java/com/primerioreactnative/extensions/PrimerGooglePayOptionsRNTest.kt
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
package com.primerioreactnative.extensions
|
|
2
|
+
|
|
3
|
+
import com.primerioreactnative.datamodels.PrimerGooglePayOptionsRN
|
|
4
|
+
import org.junit.jupiter.api.Assertions.assertFalse
|
|
5
|
+
import org.junit.jupiter.api.Assertions.assertTrue
|
|
6
|
+
import org.junit.jupiter.api.Test
|
|
7
|
+
|
|
8
|
+
internal class PrimerGooglePayOptionsRNTest {
|
|
9
|
+
@Test
|
|
10
|
+
fun `null allowedCardTypes allows all card types`() {
|
|
11
|
+
val options = PrimerGooglePayOptionsRN(allowedCardTypes = null).toPrimerGooglePayOptions()
|
|
12
|
+
|
|
13
|
+
assertTrue(options.allowCreditCards)
|
|
14
|
+
assertTrue(options.allowPrepaidCards)
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@Test
|
|
18
|
+
fun `empty allowedCardTypes allows all card types`() {
|
|
19
|
+
val options = PrimerGooglePayOptionsRN(allowedCardTypes = emptyList()).toPrimerGooglePayOptions()
|
|
20
|
+
|
|
21
|
+
assertTrue(options.allowCreditCards)
|
|
22
|
+
assertTrue(options.allowPrepaidCards)
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@Test
|
|
26
|
+
fun `debit only disables credit and prepaid`() {
|
|
27
|
+
val options = PrimerGooglePayOptionsRN(allowedCardTypes = listOf("debit")).toPrimerGooglePayOptions()
|
|
28
|
+
|
|
29
|
+
assertFalse(options.allowCreditCards)
|
|
30
|
+
assertFalse(options.allowPrepaidCards)
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@Test
|
|
34
|
+
fun `credit only keeps credit and disables prepaid`() {
|
|
35
|
+
val options = PrimerGooglePayOptionsRN(allowedCardTypes = listOf("credit")).toPrimerGooglePayOptions()
|
|
36
|
+
|
|
37
|
+
assertTrue(options.allowCreditCards)
|
|
38
|
+
assertFalse(options.allowPrepaidCards)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@Test
|
|
42
|
+
fun `prepaid only disables credit and keeps prepaid`() {
|
|
43
|
+
val options = PrimerGooglePayOptionsRN(allowedCardTypes = listOf("prepaid")).toPrimerGooglePayOptions()
|
|
44
|
+
|
|
45
|
+
assertFalse(options.allowCreditCards)
|
|
46
|
+
assertTrue(options.allowPrepaidCards)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
@Test
|
|
50
|
+
fun `unknown values are dropped and fail open`() {
|
|
51
|
+
val options =
|
|
52
|
+
PrimerGooglePayOptionsRN(allowedCardTypes = listOf("CREDIT", "unknown"))
|
|
53
|
+
.toPrimerGooglePayOptions()
|
|
54
|
+
|
|
55
|
+
assertTrue(options.allowCreditCards)
|
|
56
|
+
assertTrue(options.allowPrepaidCards)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@Test
|
|
60
|
+
fun `all card types keep both flags enabled`() {
|
|
61
|
+
val options =
|
|
62
|
+
PrimerGooglePayOptionsRN(allowedCardTypes = listOf("credit", "debit", "prepaid"))
|
|
63
|
+
.toPrimerGooglePayOptions()
|
|
64
|
+
|
|
65
|
+
assertTrue(options.allowCreditCards)
|
|
66
|
+
assertTrue(options.allowPrepaidCards)
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import PrimerFoundation
|
|
1
2
|
import PrimerSDK
|
|
2
3
|
|
|
3
4
|
extension PrimerSettings {
|
|
@@ -115,6 +116,17 @@ extension PrimerSettings {
|
|
|
115
116
|
)
|
|
116
117
|
}
|
|
117
118
|
|
|
119
|
+
var allowedCardTypes: [CardType]?
|
|
120
|
+
if let rnAllowedCardTypes = rnApplePayOptions["allowedCardTypes"] as? [String] {
|
|
121
|
+
let parsedCardTypes = rnAllowedCardTypes.compactMap { CardType(rawValue: $0) }
|
|
122
|
+
if parsedCardTypes.count != rnAllowedCardTypes.count {
|
|
123
|
+
PrimerLogging.shared.logger.warn(
|
|
124
|
+
message: "Some allowedCardTypes values cannot be filtered on Apple Pay and were ignored")
|
|
125
|
+
}
|
|
126
|
+
// empty maps to nil so Apple Pay falls open to all types
|
|
127
|
+
allowedCardTypes = parsedCardTypes.isEmpty ? nil : parsedCardTypes
|
|
128
|
+
}
|
|
129
|
+
|
|
118
130
|
applePayOptions = PrimerApplePayOptions(
|
|
119
131
|
merchantIdentifier: rnApplePayMerchantIdentifier,
|
|
120
132
|
merchantName: rnApplePayMerchantName,
|
|
@@ -122,7 +134,8 @@ extension PrimerSettings {
|
|
|
122
134
|
showApplePayForUnsupportedDevice: rnApplePayShowApplePayForUnsupportedDevice,
|
|
123
135
|
checkProvidedNetworks: rnApplePayCheckProvidedNetworks,
|
|
124
136
|
shippingOptions: shippingOptions,
|
|
125
|
-
billingOptions: billingOptions
|
|
137
|
+
billingOptions: billingOptions,
|
|
138
|
+
allowedCardTypes: allowedCardTypes
|
|
126
139
|
)
|
|
127
140
|
}
|
|
128
141
|
|
|
@@ -149,7 +162,8 @@ extension PrimerSettings {
|
|
|
149
162
|
var cardFormUIOptions: PrimerCardFormUIOptions?
|
|
150
163
|
if let rnCardFormUIOptions = rnUIOptions["cardFormUIOptions"] as? [String: Any] {
|
|
151
164
|
let rnCardFormUIOptionsData = try (JSONSerialization.data(withJSONObject: rnCardFormUIOptions))
|
|
152
|
-
let rnCardFormUIOptions = try JSONDecoder().decode(
|
|
165
|
+
let rnCardFormUIOptions = try JSONDecoder().decode(
|
|
166
|
+
PrimerCardFormUIOptionsRN.self, from: rnCardFormUIOptionsData)
|
|
153
167
|
cardFormUIOptions = rnCardFormUIOptions.asPrimerCardFormUIOptions()
|
|
154
168
|
}
|
|
155
169
|
|
|
@@ -67,7 +67,7 @@ enum PrimerEvents: Int, CaseIterable {
|
|
|
67
67
|
// MARK: - INITIALIZATION & REACT NATIVE SUPPORT
|
|
68
68
|
|
|
69
69
|
// In RNTPrimer.swift, add this property
|
|
70
|
-
@objc public weak var eventDelegate: RCTNativePrimer
|
|
70
|
+
@objc public weak var eventDelegate: RCTNativePrimer?
|
|
71
71
|
|
|
72
72
|
deinit {
|
|
73
73
|
print("🧨 deinit: \(self) \(Unmanaged.passUnretained(self).toOpaque())")
|
|
@@ -308,7 +308,7 @@ enum PrimerEvents: Int, CaseIterable {
|
|
|
308
308
|
}
|
|
309
309
|
|
|
310
310
|
private func detectImplemetedCallbacks() {
|
|
311
|
-
eventDelegate
|
|
311
|
+
eventDelegate?.sendEvent(withName: PrimerEvents.detectImplementedRNCallbacks.stringValue, body: nil)
|
|
312
312
|
}
|
|
313
313
|
|
|
314
314
|
@objc
|
|
@@ -351,7 +351,7 @@ enum PrimerEvents: Int, CaseIterable {
|
|
|
351
351
|
let json = try? JSONSerialization.jsonObject(with: data) {
|
|
352
352
|
body["checkoutData"] = json
|
|
353
353
|
}
|
|
354
|
-
self.eventDelegate
|
|
354
|
+
self.eventDelegate?.sendEvent(withName: PrimerEvents.onError.stringValue, body: body)
|
|
355
355
|
}
|
|
356
356
|
}
|
|
357
357
|
}
|
|
@@ -367,7 +367,10 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
367
367
|
do {
|
|
368
368
|
let checkoutData = try JSONEncoder().encode(data)
|
|
369
369
|
let checkoutJson = try JSONSerialization.jsonObject(with: checkoutData, options: .allowFragments)
|
|
370
|
-
self.eventDelegate
|
|
370
|
+
self.eventDelegate?.sendEvent(
|
|
371
|
+
withName: PrimerEvents.onCheckoutComplete.stringValue,
|
|
372
|
+
body: checkoutJson
|
|
373
|
+
)
|
|
371
374
|
} catch {
|
|
372
375
|
self.handleRNBridgeError(error, checkoutData: data, stopOnDebug: true)
|
|
373
376
|
}
|
|
@@ -390,7 +393,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
390
393
|
with: checkoutAdditionalInfo,
|
|
391
394
|
options: .allowFragments
|
|
392
395
|
)
|
|
393
|
-
self.eventDelegate
|
|
396
|
+
self.eventDelegate?.sendEvent(
|
|
394
397
|
withName: PrimerHeadlessUniversalCheckoutEvents.onCheckoutPending.stringValue,
|
|
395
398
|
body: checkoutAdditionalInfoJson
|
|
396
399
|
)
|
|
@@ -432,7 +435,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
432
435
|
let checkoutPaymentmethodJson = try data
|
|
433
436
|
.toPrimerCheckoutPaymentMethodDataRN()
|
|
434
437
|
.toJsonObject()
|
|
435
|
-
self.eventDelegate
|
|
438
|
+
self.eventDelegate?.sendEvent(
|
|
436
439
|
withName: PrimerEvents.onBeforePaymentCreate.stringValue,
|
|
437
440
|
body: checkoutPaymentmethodJson
|
|
438
441
|
)
|
|
@@ -451,7 +454,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
451
454
|
public func primerClientSessionWillUpdate() {
|
|
452
455
|
if self.implementedRNCallbacks?.isOnBeforeClientSessionUpdateImplemented == true {
|
|
453
456
|
DispatchQueue.main.async {
|
|
454
|
-
self.eventDelegate
|
|
457
|
+
self.eventDelegate?.sendEvent(withName: PrimerEvents.onBeforeClientSessionUpdate.stringValue, body: nil)
|
|
455
458
|
}
|
|
456
459
|
} else {
|
|
457
460
|
// RN Dev hasn't implemented this callback, ignore.
|
|
@@ -464,7 +467,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
464
467
|
let data = try JSONEncoder().encode(clientSession)
|
|
465
468
|
let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments)
|
|
466
469
|
DispatchQueue.main.async {
|
|
467
|
-
self.eventDelegate
|
|
470
|
+
self.eventDelegate?.sendEvent(withName: PrimerEvents.onClientSessionUpdate.stringValue, body: json)
|
|
468
471
|
}
|
|
469
472
|
} catch {
|
|
470
473
|
self.handleRNBridgeError(error, checkoutData: nil, stopOnDebug: true)
|
|
@@ -495,7 +498,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
495
498
|
let data = try JSONEncoder().encode(paymentMethodTokenData)
|
|
496
499
|
let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments)
|
|
497
500
|
DispatchQueue.main.async {
|
|
498
|
-
self.eventDelegate
|
|
501
|
+
self.eventDelegate?.sendEvent(withName: PrimerEvents.onTokenizeSuccess.stringValue, body: json)
|
|
499
502
|
}
|
|
500
503
|
} catch {
|
|
501
504
|
self.handleRNBridgeError(error, checkoutData: nil, stopOnDebug: true)
|
|
@@ -522,7 +525,10 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
522
525
|
}
|
|
523
526
|
|
|
524
527
|
DispatchQueue.main.async {
|
|
525
|
-
self.eventDelegate
|
|
528
|
+
self.eventDelegate?.sendEvent(
|
|
529
|
+
withName: PrimerEvents.onResumeSuccess.stringValue,
|
|
530
|
+
body: ["resumeToken": resumeToken]
|
|
531
|
+
)
|
|
526
532
|
}
|
|
527
533
|
} else {
|
|
528
534
|
// RN dev hasn't opted in on listening the tokenization callback.
|
|
@@ -533,7 +539,7 @@ extension RNTPrimer: PrimerDelegate {
|
|
|
533
539
|
public func primerDidDismiss() {
|
|
534
540
|
if self.implementedRNCallbacks?.isOnDismissImplemented == true {
|
|
535
541
|
DispatchQueue.main.async {
|
|
536
|
-
self.eventDelegate
|
|
542
|
+
self.eventDelegate?.sendEvent(withName: PrimerEvents.onDismiss.stringValue, body: nil)
|
|
537
543
|
}
|
|
538
544
|
} else {
|
|
539
545
|
// RN dev hasn't opted in on listening SDK dismiss.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// swiftlint:disable:next identifier_name
|
|
2
|
-
public let PrimerReactNativeSDKVersion = "2.
|
|
2
|
+
public let PrimerReactNativeSDKVersion = "2.46.1"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativePrimer","NativeEventEmitter","NativeModules","nativeEventEmitter","subscriptions","RNPrimer","addListener","eventType","listener","push","removeAllListeners","forEach","subscription","remove","configure","settings","Promise","resolve","reject","JSON","stringify","err","showUniversalCheckout","clientToken","showUniversalCheckoutWithClientToken","showVaultManager","showVaultManagerWithClientToken","showPaymentMethod","paymentMethod","intent","dismiss","cleanUp","handleTokenizationNewClientToken","newClientToken","handleTokenizationSuccess","handleTokenizationFailure","errorMessage","handleResumeWithNewClientToken","handleResumeSuccess","handleResumeFailure","handlePaymentCreationAbort","handlePaymentCreationContinue","showErrorMessage","setImplementedRNCallbacks","implementedRNCallbacks"],"sourceRoot":"../../src","sources":["RNPrimer.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["NativePrimer","NativeEventEmitter","NativeModules","nativeEventEmitter","subscriptions","RNPrimer","addListener","eventType","listener","push","removeAllListeners","forEach","subscription","remove","configure","settings","Promise","resolve","reject","JSON","stringify","err","showUniversalCheckout","clientToken","showUniversalCheckoutWithClientToken","showVaultManager","showVaultManagerWithClientToken","showPaymentMethod","paymentMethod","intent","dismiss","cleanUp","handleTokenizationNewClientToken","newClientToken","handleTokenizationSuccess","handleTokenizationFailure","errorMessage","handleResumeWithNewClientToken","handleResumeSuccess","handleResumeFailure","handlePaymentCreationAbort","handlePaymentCreationContinue","showErrorMessage","setImplementedRNCallbacks","implementedRNCallbacks"],"sourceRoot":"../../src","sources":["RNPrimer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -23,12 +23,4 @@ export function toRgbColor(hex) {
|
|
|
23
23
|
alpha: 1
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
export function parseCallback(data, callback) {
|
|
27
|
-
try {
|
|
28
|
-
const error = JSON.parse(data);
|
|
29
|
-
callback(error);
|
|
30
|
-
} catch (e) {
|
|
31
|
-
console.log('failed to parse json', e);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
26
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["toRgbColor","hex","test","match","exec","r","g","b","red","parseInt","green","blue","alpha"
|
|
1
|
+
{"version":3,"names":["toRgbColor","hex","test","match","exec","r","g","b","red","parseInt","green","blue","alpha"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAEA,OAAO,SAASA,UAAUA,CAACC,GAAW,EAAoB;EACxD;EACA,IAAI,CAAC,mBAAmB,CAACC,IAAI,CAACD,GAAG,CAAC,EAAE;IAClC,OAAO,IAAI;EACb;;EAEA;EACA,MAAME,KAAK,GAAG,6CAA6C,CAACC,IAAI,CAACH,GAAG,CAAC;EAErE,IAAI,CAACE,KAAK,EAAE;IACV,OAAO,IAAI;EACb;EAEA,MAAME,CAAC,GAAGF,KAAK,CAAC,CAAC,CAAC;EAClB,MAAMG,CAAC,GAAGH,KAAK,CAAC,CAAC,CAAC;EAClB,MAAMI,CAAC,GAAGJ,KAAK,CAAC,CAAC,CAAC;;EAElB;EACA,OAAO;IACLK,GAAG,EAAEC,QAAQ,CAACJ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;IAC3BK,KAAK,EAAED,QAAQ,CAACH,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;IAC7BK,IAAI,EAAEF,QAAQ,CAACF,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;IAC5BK,KAAK,EAAE;EACT,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PrimerSettings } from './models/PrimerSettings';
|
|
2
|
+
import type { PrimerImplementedRNCallbacks } from './models/PrimerImplementedRNCallbacks';
|
|
2
3
|
type EventType = 'onCheckoutComplete' | 'onBeforeClientSessionUpdate' | 'onClientSessionUpdate' | 'onBeforePaymentCreate' | 'onError' | 'onDismiss' | 'onTokenizeSuccess' | 'onResumeSuccess' | 'onResumePending' | 'onCheckoutReceivedAdditionalInfo' | 'detectImplementedRNCallbacks';
|
|
3
4
|
export interface IPrimerError {
|
|
4
5
|
errorId: string;
|
|
@@ -23,7 +24,7 @@ declare const RNPrimer: {
|
|
|
23
24
|
handlePaymentCreationAbort: (errorMessage: string | null) => Promise<void>;
|
|
24
25
|
handlePaymentCreationContinue: () => Promise<void>;
|
|
25
26
|
showErrorMessage: (errorMessage: string | null) => Promise<void>;
|
|
26
|
-
setImplementedRNCallbacks: (implementedRNCallbacks:
|
|
27
|
+
setImplementedRNCallbacks: (implementedRNCallbacks: PrimerImplementedRNCallbacks) => Promise<void>;
|
|
27
28
|
};
|
|
28
29
|
export default RNPrimer;
|
|
29
30
|
//# sourceMappingURL=RNPrimer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNPrimer.d.ts","sourceRoot":"","sources":["../../../src/RNPrimer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"RNPrimer.d.ts","sourceRoot":"","sources":["../../../src/RNPrimer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAY1F,KAAK,SAAS,GACV,oBAAoB,GACpB,6BAA6B,GAC7B,uBAAuB,GACvB,uBAAuB,GACvB,SAAS,GACT,WAAW,GACX,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,kCAAkC,GAClC,8BAA8B,CAAC;AAEnC,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,QAAQ;2BAKW,SAAS,YAAY,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;;0BAWzC,cAAc,GAAG,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;yCAW3B,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;oCAW3B,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;uCAWnB,MAAM,UAAU,MAAM,eAAe,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;mBAWjF,OAAO,CAAC,IAAI,CAAC;mBAWb,OAAO,CAAC,IAAI,CAAC;uDAiByB,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;qCAW1C,OAAO,CAAC,IAAI,CAAC;8CAWF,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;qDAatB,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;+BAW9C,OAAO,CAAC,IAAI,CAAC;wCAWF,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;+CAatB,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;yCAWrC,OAAO,CAAC,IAAI,CAAC;qCAYf,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;wDAYV,4BAA4B,KAAG,OAAO,CAAC,IAAI,CAAC;CAUjG,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -3,6 +3,7 @@ import type { PrimerCheckoutAdditionalInfo } from './PrimerCheckoutAdditionalInf
|
|
|
3
3
|
import type { PrimerCheckoutPaymentMethodData } from './PrimerCheckoutPaymentMethodData';
|
|
4
4
|
import type { PrimerClientSession } from './PrimerClientSession';
|
|
5
5
|
import type { PrimerPaymentMethodTokenData } from './PrimerPaymentMethodTokenData';
|
|
6
|
+
import type { IPrimerHeadlessUniversalCheckoutPaymentMethod } from './PrimerHeadlessUniversalCheckoutPaymentMethod';
|
|
6
7
|
import type { PrimerError } from './PrimerError';
|
|
7
8
|
import type { IPrimerTheme } from './PrimerTheme';
|
|
8
9
|
import type { PrimerPaymentCreationHandler, PrimerTokenizationHandler, PrimerResumeHandler, PrimerErrorHandler, PrimerHeadlessUniversalCheckoutResumeHandler } from './PrimerHandlers';
|
|
@@ -26,7 +27,7 @@ interface IPrimerSettings {
|
|
|
26
27
|
onError?: (error: PrimerError, checkoutData: PrimerCheckoutData | null, handler: PrimerErrorHandler | undefined) => void;
|
|
27
28
|
onDismiss?: () => void;
|
|
28
29
|
headlessUniversalCheckoutCallbacks?: {
|
|
29
|
-
onAvailablePaymentMethodsLoad?: (availablePaymentMethods:
|
|
30
|
+
onAvailablePaymentMethodsLoad?: (availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[]) => void;
|
|
30
31
|
onTokenizationStart?: (paymentMethodType: string) => void;
|
|
31
32
|
onTokenizationSuccess?: (paymentMethodTokenData: PrimerPaymentMethodTokenData, handler: PrimerHeadlessUniversalCheckoutResumeHandler) => void;
|
|
32
33
|
onCheckoutResume?: (resumeToken: string, handler: PrimerHeadlessUniversalCheckoutResumeHandler) => void;
|
|
@@ -90,6 +91,7 @@ interface IPrimerApplePayOptions {
|
|
|
90
91
|
checkProvidedNetworks?: boolean;
|
|
91
92
|
shippingOptions?: IShippingOptions;
|
|
92
93
|
billingOptions?: IBillingOptions;
|
|
94
|
+
allowedCardTypes?: PrimerWalletCardType[];
|
|
93
95
|
}
|
|
94
96
|
interface IShippingOptions {
|
|
95
97
|
shippingContactFields?: RequiredContactField[];
|
|
@@ -99,6 +101,7 @@ interface IBillingOptions {
|
|
|
99
101
|
requiredBillingContactFields?: RequiredContactField[];
|
|
100
102
|
}
|
|
101
103
|
type RequiredContactField = 'name' | 'emailAddress' | 'phoneNumber' | 'postalAddress';
|
|
104
|
+
type PrimerWalletCardType = 'credit' | 'debit' | 'prepaid';
|
|
102
105
|
interface IPrimerCardPaymentOptions {
|
|
103
106
|
is3DSOnVaultingEnabled: boolean;
|
|
104
107
|
}
|
|
@@ -108,7 +111,7 @@ interface IPrimerGoCardlessOptions {
|
|
|
108
111
|
}
|
|
109
112
|
interface IPrimerGooglePayOptions {
|
|
110
113
|
merchantName?: string;
|
|
111
|
-
|
|
114
|
+
allowedCardTypes?: PrimerWalletCardType[];
|
|
112
115
|
isCaptureBillingAddressEnabled?: boolean;
|
|
113
116
|
isExistingPaymentMethodRequired?: boolean;
|
|
114
117
|
shippingAddressParameters?: IPrimerGoogleShippingAddressParameters;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PrimerSettings.d.ts","sourceRoot":"","sources":["../../../../src/models/PrimerSettings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EACV,4BAA4B,EAC5B,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EAClB,4CAA4C,EAC7C,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC;AAE7C,UAAU,eAAe;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACpC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;IACnD,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAG9B,2BAA2B,CAAC,EAAE,MAAM,IAAI,CAAC;IACzC,qBAAqB,CAAC,EAAE,CAAC,aAAa,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrE,qBAAqB,CAAC,EAAE,CACtB,yBAAyB,EAAE,+BAA+B,EAC1D,OAAO,EAAE,4BAA4B,KAClC,IAAI,CAAC;IACV,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAChE,iBAAiB,CAAC,EAAE,CAClB,sBAAsB,EAAE,4BAA4B,EACpD,OAAO,EAAE,yBAAyB,KAC/B,IAAI,CAAC;IACV,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC9E,eAAe,CAAC,EAAE,CAAC,cAAc,EAAE,4BAA4B,KAAK,IAAI,CAAC;IACzE,gCAAgC,CAAC,EAAE,CAAC,cAAc,EAAE,4BAA4B,KAAK,IAAI,CAAC;IAC1F,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,kBAAkB,GAAG,IAAI,EACvC,OAAO,EAAE,kBAAkB,GAAG,SAAS,KACpC,IAAI,CAAC;IACV,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IAEvB,kCAAkC,CAAC,EAAE;QACnC,6BAA6B,CAAC,EAAE,CAAC,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"PrimerSettings.d.ts","sourceRoot":"","sources":["../../../../src/models/PrimerSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAwBxD
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAwBxD"}
|
package/package.json
CHANGED
|
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
|
|
|
17
17
|
s.private_header_files = ['ios/PrimerSwiftInterop.h' ]
|
|
18
18
|
|
|
19
19
|
s.dependency "React-Core"
|
|
20
|
-
s.dependency "PrimerSDK", "2.
|
|
20
|
+
s.dependency "PrimerSDK", "2.51.1"
|
|
21
21
|
|
|
22
22
|
s.pod_target_xcconfig = {
|
|
23
23
|
"SWIFT_ENABLE_EXPLICIT_MODULES" => "NO"
|
package/src/RNPrimer.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PrimerSettings } from './models/PrimerSettings';
|
|
2
|
+
import type { PrimerImplementedRNCallbacks } from './models/PrimerImplementedRNCallbacks';
|
|
2
3
|
import type { EventSubscription } from 'react-native';
|
|
3
4
|
import NativePrimer from './specs/NativePrimer';
|
|
4
5
|
|
|
@@ -222,7 +223,7 @@ const RNPrimer = {
|
|
|
222
223
|
},
|
|
223
224
|
|
|
224
225
|
// HELPERS
|
|
225
|
-
setImplementedRNCallbacks: (implementedRNCallbacks:
|
|
226
|
+
setImplementedRNCallbacks: (implementedRNCallbacks: PrimerImplementedRNCallbacks): Promise<void> => {
|
|
226
227
|
return new Promise(async (resolve, reject) => {
|
|
227
228
|
try {
|
|
228
229
|
await NativePrimer.setImplementedRNCallbacks(JSON.stringify(implementedRNCallbacks));
|
|
@@ -3,6 +3,7 @@ import type { PrimerCheckoutAdditionalInfo } from './PrimerCheckoutAdditionalInf
|
|
|
3
3
|
import type { PrimerCheckoutPaymentMethodData } from './PrimerCheckoutPaymentMethodData';
|
|
4
4
|
import type { PrimerClientSession } from './PrimerClientSession';
|
|
5
5
|
import type { PrimerPaymentMethodTokenData } from './PrimerPaymentMethodTokenData';
|
|
6
|
+
import type { IPrimerHeadlessUniversalCheckoutPaymentMethod } from './PrimerHeadlessUniversalCheckoutPaymentMethod';
|
|
6
7
|
import type { PrimerError } from './PrimerError';
|
|
7
8
|
import type { IPrimerTheme } from './PrimerTheme';
|
|
8
9
|
import type {
|
|
@@ -47,7 +48,7 @@ interface IPrimerSettings {
|
|
|
47
48
|
onDismiss?: () => void;
|
|
48
49
|
|
|
49
50
|
headlessUniversalCheckoutCallbacks?: {
|
|
50
|
-
onAvailablePaymentMethodsLoad?: (availablePaymentMethods:
|
|
51
|
+
onAvailablePaymentMethodsLoad?: (availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[]) => void;
|
|
51
52
|
onTokenizationStart?: (paymentMethodType: string) => void;
|
|
52
53
|
onTokenizationSuccess?: (
|
|
53
54
|
paymentMethodTokenData: PrimerPaymentMethodTokenData,
|
|
@@ -131,6 +132,7 @@ interface IPrimerApplePayOptions {
|
|
|
131
132
|
checkProvidedNetworks?: boolean;
|
|
132
133
|
shippingOptions?: IShippingOptions;
|
|
133
134
|
billingOptions?: IBillingOptions;
|
|
135
|
+
allowedCardTypes?: PrimerWalletCardType[];
|
|
134
136
|
}
|
|
135
137
|
interface IShippingOptions {
|
|
136
138
|
shippingContactFields?: RequiredContactField[];
|
|
@@ -142,6 +144,8 @@ interface IBillingOptions {
|
|
|
142
144
|
|
|
143
145
|
type RequiredContactField = 'name' | 'emailAddress' | 'phoneNumber' | 'postalAddress';
|
|
144
146
|
|
|
147
|
+
type PrimerWalletCardType = 'credit' | 'debit' | 'prepaid';
|
|
148
|
+
|
|
145
149
|
interface IPrimerCardPaymentOptions {
|
|
146
150
|
is3DSOnVaultingEnabled: boolean;
|
|
147
151
|
}
|
|
@@ -153,7 +157,7 @@ interface IPrimerGoCardlessOptions {
|
|
|
153
157
|
|
|
154
158
|
interface IPrimerGooglePayOptions {
|
|
155
159
|
merchantName?: string;
|
|
156
|
-
|
|
160
|
+
allowedCardTypes?: PrimerWalletCardType[];
|
|
157
161
|
isCaptureBillingAddressEnabled?: boolean;
|
|
158
162
|
isExistingPaymentMethodRequired?: boolean;
|
|
159
163
|
shippingAddressParameters?: IPrimerGoogleShippingAddressParameters;
|
package/src/utils/index.ts
CHANGED
|
@@ -25,12 +25,3 @@ export function toRgbColor(hex: string): RgbaColor | null {
|
|
|
25
25
|
alpha: 1,
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
export function parseCallback<T>(data: any, callback: (val: T) => void) {
|
|
30
|
-
try {
|
|
31
|
-
const error = JSON.parse(data) as T;
|
|
32
|
-
callback(error);
|
|
33
|
-
} catch (e) {
|
|
34
|
-
console.log('failed to parse json', e);
|
|
35
|
-
}
|
|
36
|
-
}
|