@primer-io/react-native 0.7.0-beta → 0.9.0
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/PrimerRN.kt +0 -9
- package/android/src/main/java/com/primerioreactnative/PrimerRNEventListener.kt +0 -5
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerOnClientSessionActionsRequestRN.kt +25 -2
- package/ios/DataModels/PrimerErrorRN.swift +1 -0
- package/ios/DataModels/PrimerIntentRN.swift +3 -36
- package/ios/PrimerRN+PrimerDelegate.swift +21 -4
- package/ios/PrimerRN.swift +12 -33
- package/ios/ReactNative.m +0 -2
- package/lib/commonjs/Primer.js +5 -12
- package/lib/commonjs/Primer.js.map +1 -1
- package/lib/commonjs/models/primer-intent.js +1 -1
- package/lib/commonjs/models/primer-intent.js.map +1 -1
- package/lib/module/Primer.js +5 -12
- package/lib/module/Primer.js.map +1 -1
- package/lib/module/models/primer-intent.js +1 -1
- package/lib/module/models/primer-intent.js.map +1 -1
- package/lib/typescript/models/client-session-actions-request.d.ts +5 -1
- package/lib/typescript/models/primer-intent.d.ts +1 -1
- package/lib/typescript/models/primer.d.ts +0 -6
- package/package.json +1 -1
- package/primer-io-react-native.podspec +1 -1
- package/src/Primer.ts +5 -16
- package/src/models/client-session-actions-request.ts +9 -1
- package/src/models/primer-intent.ts +30 -6
- package/src/models/primer.ts +0 -7
- package/android/.gradle/7.0.2/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.0.2/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.0.2/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.0.2/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.0.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.0.2/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- 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/vcs-1/gc.properties +0 -0
package/android/build.gradle
CHANGED
|
@@ -128,5 +128,5 @@ dependencies {
|
|
|
128
128
|
api 'com.facebook.react:react-native:+'
|
|
129
129
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
130
130
|
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.2"
|
|
131
|
-
implementation 'io.primer:android:1.
|
|
131
|
+
implementation 'io.primer:android:1.8.0'
|
|
132
132
|
}
|
|
@@ -162,15 +162,6 @@ class PrimerRN(reactContext: ReactApplicationContext) : ReactContextBaseJavaModu
|
|
|
162
162
|
sdkWasInitialised = true
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
-
@ReactMethod
|
|
166
|
-
fun fetchSavedPaymentInstruments(token: String) {
|
|
167
|
-
Log.d("PrimerRN", "fetch saved payment instruments")
|
|
168
|
-
|
|
169
|
-
if (!sdkWasInitialised) startSdk(token)
|
|
170
|
-
|
|
171
|
-
Primer.instance.fetchSavedPaymentInstruments(token)
|
|
172
|
-
}
|
|
173
|
-
|
|
174
165
|
@ReactMethod
|
|
175
166
|
fun initialize(token: String) {
|
|
176
167
|
try {
|
|
@@ -96,11 +96,6 @@ class PrimerRNEventListener : CheckoutEventListener {
|
|
|
96
96
|
onResumeSuccessQueue?.addRequestAndPoll(token)
|
|
97
97
|
resumeHandler = e.resumeHandler
|
|
98
98
|
}
|
|
99
|
-
is CheckoutEvent.SavedPaymentInstrumentsFetched -> {
|
|
100
|
-
val list = e.data.map { PrimerPaymentInstrumentTokenRN.fromPaymentMethodToken(it) }
|
|
101
|
-
val request = Json.encodeToString(list)
|
|
102
|
-
onSavedPaymentInstrumentsFetchedQueue?.addRequestAndPoll(request)
|
|
103
|
-
}
|
|
104
99
|
is CheckoutEvent.Exit -> {
|
|
105
100
|
onDismissQueue?.addRequestAndPoll("dismiss")
|
|
106
101
|
onDismissQueue = null
|
|
@@ -13,6 +13,12 @@ data class PrimerOnClientSessionActionsRequestRN(
|
|
|
13
13
|
val type: String,
|
|
14
14
|
val paymentMethodType: String? = null,
|
|
15
15
|
val network: String? = null,
|
|
16
|
+
val params: Params? = null,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
@Serializable
|
|
20
|
+
data class Params(
|
|
21
|
+
val billingAddress: Map<String, String?>
|
|
16
22
|
)
|
|
17
23
|
|
|
18
24
|
companion object {
|
|
@@ -24,14 +30,31 @@ data class PrimerOnClientSessionActionsRequestRN(
|
|
|
24
30
|
when (action) {
|
|
25
31
|
is ClientSessionActionsRequest.SetPaymentMethod -> {
|
|
26
32
|
Action(
|
|
27
|
-
type = "
|
|
33
|
+
type = "SELECT_PAYMENT_METHOD",
|
|
28
34
|
paymentMethodType = action.paymentMethodType,
|
|
29
35
|
network = action.network,
|
|
30
36
|
)
|
|
31
37
|
}
|
|
32
38
|
is ClientSessionActionsRequest.UnsetPaymentMethod -> {
|
|
33
39
|
Action(
|
|
34
|
-
type = "
|
|
40
|
+
type = "UNSELECT_PAYMENT_METHOD",
|
|
41
|
+
)
|
|
42
|
+
}
|
|
43
|
+
is ClientSessionActionsRequest.SetBillingAddress -> {
|
|
44
|
+
Action(
|
|
45
|
+
type = "SET_BILLING_ADDRESS",
|
|
46
|
+
params = Params(
|
|
47
|
+
billingAddress = mapOf(
|
|
48
|
+
"firstName" to action.firstName,
|
|
49
|
+
"lastName" to action.lastName,
|
|
50
|
+
"addressLine1" to action.addressLine1,
|
|
51
|
+
"addressLine2" to action.addressLine2,
|
|
52
|
+
"city" to action.city,
|
|
53
|
+
"postalCode" to action.postalCode,
|
|
54
|
+
"state" to action.state,
|
|
55
|
+
"countryCode" to action.countryCode
|
|
56
|
+
)
|
|
57
|
+
)
|
|
35
58
|
)
|
|
36
59
|
}
|
|
37
60
|
}
|
|
@@ -2,42 +2,9 @@ import PrimerSDK
|
|
|
2
2
|
|
|
3
3
|
struct PrimerIntentRN: Decodable {
|
|
4
4
|
let vault: Bool
|
|
5
|
-
let paymentMethod:
|
|
5
|
+
let paymentMethod: String
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
switch (vault) {
|
|
11
|
-
case false:
|
|
12
|
-
switch (paymentMethod) {
|
|
13
|
-
case .Any:
|
|
14
|
-
return .default
|
|
15
|
-
case .ApplePay:
|
|
16
|
-
return .checkoutWithApplePay
|
|
17
|
-
case .Klarna:
|
|
18
|
-
return .checkoutWithKlarna
|
|
19
|
-
case .Card:
|
|
20
|
-
return .completeDirectCheckout
|
|
21
|
-
default:
|
|
22
|
-
return nil
|
|
23
|
-
}
|
|
24
|
-
case true:
|
|
25
|
-
switch (paymentMethod) {
|
|
26
|
-
case .Any:
|
|
27
|
-
return .defaultWithVault
|
|
28
|
-
case .Klarna:
|
|
29
|
-
return .addKlarnaToVault
|
|
30
|
-
case .PayPal:
|
|
31
|
-
return .addPayPalToVault
|
|
32
|
-
case .Card:
|
|
33
|
-
return .defaultWithVault
|
|
34
|
-
default:
|
|
35
|
-
return nil
|
|
36
|
-
}
|
|
37
|
-
}
|
|
7
|
+
var paymentMethodConfigType: PaymentMethodConfigType {
|
|
8
|
+
PaymentMethodConfigType.init(rawValue: paymentMethod)
|
|
38
9
|
}
|
|
39
10
|
}
|
|
40
|
-
|
|
41
|
-
enum PrimerPaymentMethodTypeRN: String, Decodable {
|
|
42
|
-
case `Any`, Klarna, Card, PayPal, GooglePay, ApplePay, GoCardless
|
|
43
|
-
}
|
|
@@ -41,12 +41,12 @@ extension PrimerRN: PrimerDelegate {
|
|
|
41
41
|
|
|
42
42
|
func onClientSessionActions(_ actions: [ClientSession.Action], resumeHandler: ResumeHandlerProtocol?) {
|
|
43
43
|
do {
|
|
44
|
-
let actionsRN: [[String:
|
|
44
|
+
let actionsRN: [[String: Any]] = actions.compactMap {
|
|
45
45
|
|
|
46
46
|
if ($0.`type` == "SELECT_PAYMENT_METHOD") {
|
|
47
47
|
let network = ($0.params?["binData"] as? [String: Any])?["network"] as? String
|
|
48
48
|
return [
|
|
49
|
-
"type": "
|
|
49
|
+
"type": "SELECT_PAYMENT_METHOD",
|
|
50
50
|
"paymentMethodType": $0.params?["paymentMethodType"] as? String,
|
|
51
51
|
"network": network,
|
|
52
52
|
]
|
|
@@ -54,7 +54,23 @@ extension PrimerRN: PrimerDelegate {
|
|
|
54
54
|
|
|
55
55
|
if ($0.`type` == "UNSELECT_PAYMENT_METHOD") {
|
|
56
56
|
return [
|
|
57
|
-
"type": "
|
|
57
|
+
"type": "UNSELECT_PAYMENT_METHOD",
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if ($0.`type` == "SET_BILLING_ADDRESS") {
|
|
62
|
+
|
|
63
|
+
var billingAddress: [String: String] = [:]
|
|
64
|
+
|
|
65
|
+
$0.params?.forEach { entry in
|
|
66
|
+
if let value = entry.value as? String, !value.isEmpty {
|
|
67
|
+
billingAddress[entry.key] = value
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return [
|
|
72
|
+
"type": "SET_BILLING_ADDRESS",
|
|
73
|
+
"params": [ "billingAddress": billingAddress ]
|
|
58
74
|
]
|
|
59
75
|
}
|
|
60
76
|
|
|
@@ -68,6 +84,7 @@ extension PrimerRN: PrimerDelegate {
|
|
|
68
84
|
let data = try JSONSerialization.data(withJSONObject: request, options: .fragmentsAllowed)
|
|
69
85
|
let jsonString = String(data: data, encoding: .utf8)!
|
|
70
86
|
self.onClientSessionActionsCallback?([jsonString])
|
|
87
|
+
self.onClientSessionActionsCallback = nil
|
|
71
88
|
} catch {
|
|
72
89
|
checkoutFailed(with: ErrorTypeRN.ParseJsonFailed)
|
|
73
90
|
}
|
|
@@ -78,7 +95,7 @@ extension PrimerRN: PrimerDelegate {
|
|
|
78
95
|
} else if let error = error {
|
|
79
96
|
resumeHandler?.handle(error: error)
|
|
80
97
|
} else {
|
|
81
|
-
resumeHandler?.handle(error:
|
|
98
|
+
resumeHandler?.handle(error: ErrorTypeRN.generic)
|
|
82
99
|
}
|
|
83
100
|
}
|
|
84
101
|
}
|
package/ios/PrimerRN.swift
CHANGED
|
@@ -15,7 +15,7 @@ class PrimerRN: NSObject {
|
|
|
15
15
|
var clientToken: String?
|
|
16
16
|
var settings: PrimerSettingsRN?
|
|
17
17
|
var theme: PrimerThemeRN?
|
|
18
|
-
var
|
|
18
|
+
var intent: PrimerIntentRN?
|
|
19
19
|
var onTokenizeSuccessCallback: RCTResponseSenderBlock?
|
|
20
20
|
var onClientSessionActionsCallback: RCTResponseSenderBlock?
|
|
21
21
|
var onResumeSuccessCallback: RCTResponseSenderBlock?
|
|
@@ -24,7 +24,6 @@ class PrimerRN: NSObject {
|
|
|
24
24
|
var onPrimerErrorCallback: RCTResponseSenderBlock?
|
|
25
25
|
var onResumeFlowCallback: BasicCompletionBlock?
|
|
26
26
|
var onActionResumeCallback: BasicCompletionBlock?
|
|
27
|
-
var onSavedPaymentInstrumentsFetchedCallback: RCTResponseSenderBlock?
|
|
28
27
|
|
|
29
28
|
private var sdkWasInitialised = false
|
|
30
29
|
internal var haltExecution = false
|
|
@@ -53,7 +52,7 @@ class PrimerRN: NSObject {
|
|
|
53
52
|
do {
|
|
54
53
|
let json = request.data(using: .utf8)!
|
|
55
54
|
let intent = try JSONDecoder().decode(PrimerIntentRN.self, from: json)
|
|
56
|
-
self.
|
|
55
|
+
self.intent = intent
|
|
57
56
|
} catch {
|
|
58
57
|
checkoutFailed(with: ErrorTypeRN.ParseJsonFailed)
|
|
59
58
|
}
|
|
@@ -83,33 +82,6 @@ class PrimerRN: NSObject {
|
|
|
83
82
|
self.onPrimerErrorCallback = callback
|
|
84
83
|
}
|
|
85
84
|
|
|
86
|
-
@objc func configureOnSavedPaymentInstrumentsFetched(_ callback: @escaping RCTResponseSenderBlock) {
|
|
87
|
-
self.onSavedPaymentInstrumentsFetchedCallback = callback
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
@objc func fetchSavedPaymentInstruments(_ token: String) {
|
|
91
|
-
|
|
92
|
-
self.clientToken = token
|
|
93
|
-
|
|
94
|
-
Primer.shared.delegate = self
|
|
95
|
-
|
|
96
|
-
Primer.shared.fetchVaultedPaymentMethods { [weak self] result in
|
|
97
|
-
switch result {
|
|
98
|
-
case .failure(let error):
|
|
99
|
-
self?.checkoutFailed(with: error)
|
|
100
|
-
case .success(let tokens):
|
|
101
|
-
do {
|
|
102
|
-
let json = try self?.encoder.encode(tokens)
|
|
103
|
-
let data = String(data: json!, encoding: .utf8)!
|
|
104
|
-
self?.onSavedPaymentInstrumentsFetchedCallback?([data])
|
|
105
|
-
self?.onSavedPaymentInstrumentsFetchedCallback = nil
|
|
106
|
-
} catch {
|
|
107
|
-
self?.checkoutFailed(with: error)
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
85
|
@objc func initialize(_ token: String) -> Void {
|
|
114
86
|
DispatchQueue.main.async { [weak self] in
|
|
115
87
|
do {
|
|
@@ -117,7 +89,7 @@ class PrimerRN: NSObject {
|
|
|
117
89
|
throw ErrorTypeRN.noIosViewController
|
|
118
90
|
}
|
|
119
91
|
|
|
120
|
-
guard let
|
|
92
|
+
guard let intent = self?.intent else {
|
|
121
93
|
throw ErrorTypeRN.invalidPrimerIntent
|
|
122
94
|
}
|
|
123
95
|
|
|
@@ -132,7 +104,14 @@ class PrimerRN: NSObject {
|
|
|
132
104
|
|
|
133
105
|
Primer.shared.delegate = self
|
|
134
106
|
Primer.shared.configure(settings: settings, theme: theme)
|
|
135
|
-
|
|
107
|
+
|
|
108
|
+
DispatchQueue.main.async {
|
|
109
|
+
if (intent.vault) {
|
|
110
|
+
Primer.shared.showVaultManager(on: viewController, clientToken: token)
|
|
111
|
+
} else {
|
|
112
|
+
Primer.shared.showUniversalCheckout(on: viewController, clientToken: token)
|
|
113
|
+
}
|
|
114
|
+
}
|
|
136
115
|
} catch {
|
|
137
116
|
self?.checkoutFailed(with: error)
|
|
138
117
|
}
|
|
@@ -171,7 +150,7 @@ class PrimerRN: NSObject {
|
|
|
171
150
|
} else if let clientToken = request.token {
|
|
172
151
|
self?.onActionResumeCallback?(nil, clientToken)
|
|
173
152
|
} else {
|
|
174
|
-
self?.onActionResumeCallback?(nil,
|
|
153
|
+
self?.onActionResumeCallback?(nil, self?.clientToken)
|
|
175
154
|
}
|
|
176
155
|
|
|
177
156
|
self?.onActionResumeCallback = nil
|
package/ios/ReactNative.m
CHANGED
|
@@ -23,8 +23,6 @@ RCT_EXTERN_METHOD(configureOnPrimerError: (RCTResponseSenderBlock)callback)
|
|
|
23
23
|
|
|
24
24
|
RCT_EXTERN_METHOD(configureOnSavedPaymentInstrumentsFetched: (RCTResponseSenderBlock)callback)
|
|
25
25
|
|
|
26
|
-
RCT_EXTERN_METHOD(fetchSavedPaymentInstruments: (NSString *)token)
|
|
27
|
-
|
|
28
26
|
RCT_EXTERN_METHOD(initialize: (NSString *)data)
|
|
29
27
|
|
|
30
28
|
RCT_EXTERN_METHOD(resume: (NSString *)data)
|
package/lib/commonjs/Primer.js
CHANGED
|
@@ -37,11 +37,11 @@ const PrimerNativeMapping = {
|
|
|
37
37
|
NativeModule.initialize(token);
|
|
38
38
|
},
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
// todo: refactor
|
|
41
|
+
// fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {
|
|
42
|
+
// configure(config);
|
|
43
|
+
// NativeModule.fetchSavedPaymentInstruments(token);
|
|
44
|
+
// },
|
|
45
45
|
dispose() {
|
|
46
46
|
NativeModule.dispose();
|
|
47
47
|
}
|
|
@@ -58,7 +58,6 @@ function configure(config) {
|
|
|
58
58
|
configureOnTokenizeSuccess(config.onTokenizeSuccess);
|
|
59
59
|
configureOnClientSessionActions(config.onClientSessionActions);
|
|
60
60
|
configureOnResumeSuccess(config.onResumeSuccess);
|
|
61
|
-
configureOnSavedPaymentInstrumentsFetched(config.onSavedPaymentInstrumentsFetched);
|
|
62
61
|
}
|
|
63
62
|
|
|
64
63
|
function configureSettings(settings = {}) {
|
|
@@ -211,10 +210,4 @@ function configureOnError(callback = _ => {}) {
|
|
|
211
210
|
(0, _utils.parseCallback)(data, callback);
|
|
212
211
|
});
|
|
213
212
|
}
|
|
214
|
-
|
|
215
|
-
function configureOnSavedPaymentInstrumentsFetched(callback = _ => {}) {
|
|
216
|
-
NativeModule.configureOnSavedPaymentInstrumentsFetched(data => {
|
|
217
|
-
(0, _utils.parseCallback)(data, callback);
|
|
218
|
-
});
|
|
219
|
-
}
|
|
220
213
|
//# sourceMappingURL=Primer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Primer.ts"],"names":["PrimerRN","NativeModule","NativeModules","PrimerNativeMapping","showUniversalCheckout","token","config","configureIntent","vault","paymentMethod","configure","initialize","showVaultManager","showPaymentMethod","intent","fetchSavedPaymentInstruments","dispose","configureTheme","theme","configureSettings","settings","configureOnVaultSuccess","onTokenAddedToVault","configureOnDismiss","onDismiss","configureOnError","onError","configureOnTokenizeSuccess","onTokenizeSuccess","configureOnClientSessionActions","onClientSessionActions","configureOnResumeSuccess","onResumeSuccess","configureOnSavedPaymentInstrumentsFetched","onSavedPaymentInstrumentsFetched","data","JSON","stringify","resume","request","callback","_","__","parsedData","parse","handleError","error","handleSuccess","handleNewClientToken","resumeWithError","resumeWithSuccess","e","console","log","actionResume","___","paymentMethodToken","configureOnPrimerError"],"mappings":"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","sourcesContent":["import { NativeModules } from 'react-native';\nimport type { ClientSessionActionsRequest } from './models/client-session-actions-request';\nimport type { PaymentInstrumentToken } from './models/payment-instrument-token';\nimport type { IPrimer } from './models/primer';\nimport type {\n OnClientSessionActionsCallback,\n OnDismissCallback,\n OnPrimerErrorCallback,\n OnSavedPaymentInstrumentsFetchedCallback,\n OnTokenAddedToVaultCallback,\n OnTokenizeSuccessCallback,\n} from './models/primer-callbacks';\nimport type { PrimerConfig } from './models/primer-config';\nimport type { PrimerError } from './models/primer-error';\nimport type {\n PrimerIntent,\n PrimerPaymentMethodIntent,\n} from './models/primer-intent';\nimport type { PrimerSettings } from './models/primer-settings';\nimport type { PrimerTheme } from './models/primer-theme';\nimport { parseCallback } from './utils';\n\nconst { PrimerRN: NativeModule } = NativeModules;\n\nexport const PrimerNativeMapping: IPrimer = {\n showUniversalCheckout(token: String, config: PrimerConfig): void {\n configureIntent({ vault: false, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showVaultManager(token: String, config: PrimerConfig): void {\n configureIntent({ vault: true, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showPaymentMethod(\n token: String,\n intent: PrimerPaymentMethodIntent,\n config: PrimerConfig\n ): void {\n configureIntent(intent);\n configure(config);\n NativeModule.initialize(token);\n },\n\n fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {\n configure(config);\n NativeModule.fetchSavedPaymentInstruments(token);\n },\n\n dispose(): void {\n NativeModule.dispose();\n },\n};\n\nfunction configure(config: PrimerConfig): void {\n configureTheme(config.theme);\n configureSettings(config.settings);\n configureOnVaultSuccess(config.onTokenAddedToVault);\n configureOnDismiss(config.onDismiss);\n configureOnError(config.onError);\n configureOnTokenizeSuccess(config.onTokenizeSuccess);\n configureOnClientSessionActions(config.onClientSessionActions);\n configureOnResumeSuccess(config.onResumeSuccess);\n configureOnSavedPaymentInstrumentsFetched(\n config.onSavedPaymentInstrumentsFetched\n );\n}\n\nfunction configureSettings(settings: PrimerSettings = {}): void {\n const data = JSON.stringify(settings);\n NativeModule.configureSettings(data);\n}\n\nfunction configureTheme(theme: PrimerTheme = {}): void {\n const data = JSON.stringify(theme);\n NativeModule.configureTheme(data);\n}\n\nfunction configureIntent(\n intent: PrimerIntent = { vault: false, paymentMethod: 'Any' }\n): void {\n const data = JSON.stringify(intent);\n NativeModule.configureIntent(data);\n}\n\nfunction resume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.resume(data);\n}\n\nfunction configureOnTokenizeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnTokenizeSuccess((data: any) => {\n try {\n const parsedData = JSON.parse(data) as PaymentInstrumentToken;\n callback(parsedData, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction actionResume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.actionResume(data);\n}\n\nfunction configureOnClientSessionActions(\n callback: OnClientSessionActionsCallback = (_, __) => {\n NativeModule.configureOnClientSessionActions((___: any) => {\n actionResume({ error: null, token: null });\n configureOnClientSessionActions(callback);\n });\n }\n) {\n NativeModule.configureOnClientSessionActions((data: any) => {\n try {\n const parsedData = JSON.parse(data) as ClientSessionActionsRequest;\n callback(parsedData, {\n handleError: (error) => actionResume({ error, token: null }),\n handleSuccess: () => actionResume({ error: null, token: null }),\n handleNewClientToken: (token) => actionResume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => actionResume({ error, token: null }),\n resumeWithSuccess: (token) => actionResume({ error: null, token }),\n });\n configureOnClientSessionActions(callback);\n } catch (e) {\n console.log('[OnClientSessionActions]', 'failed to parse json', e);\n }\n });\n}\n\nfunction configureOnResumeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnResumeSuccess((paymentMethodToken: any) => {\n try {\n callback(paymentMethodToken, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction configureOnVaultSuccess(\n callback: OnTokenAddedToVaultCallback = (_) => {}\n) {\n NativeModule.configureOnVaultSuccess((data: any) => {\n parseCallback<PaymentInstrumentToken>(data, callback);\n });\n}\n\nfunction configureOnDismiss(callback: OnDismissCallback = () => {}) {\n NativeModule.configureOnDismiss((_: any) => callback());\n}\n\nfunction configureOnError(callback: OnPrimerErrorCallback = (_) => {}) {\n NativeModule.configureOnPrimerError((data: any) => {\n parseCallback<PrimerError>(data, callback);\n });\n}\n\nfunction configureOnSavedPaymentInstrumentsFetched(\n callback: OnSavedPaymentInstrumentsFetchedCallback = (_) => {}\n) {\n NativeModule.configureOnSavedPaymentInstrumentsFetched((data: any) => {\n parseCallback<PaymentInstrumentToken[]>(data, callback);\n });\n}\n\ninterface ResumeRequest {\n error: string | null;\n token: string | null;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Primer.ts"],"names":["PrimerRN","NativeModule","NativeModules","PrimerNativeMapping","showUniversalCheckout","token","config","configureIntent","vault","paymentMethod","configure","initialize","showVaultManager","showPaymentMethod","intent","dispose","configureTheme","theme","configureSettings","settings","configureOnVaultSuccess","onTokenAddedToVault","configureOnDismiss","onDismiss","configureOnError","onError","configureOnTokenizeSuccess","onTokenizeSuccess","configureOnClientSessionActions","onClientSessionActions","configureOnResumeSuccess","onResumeSuccess","data","JSON","stringify","resume","request","callback","_","__","parsedData","parse","handleError","error","handleSuccess","handleNewClientToken","resumeWithError","resumeWithSuccess","e","console","log","actionResume","___","paymentMethodToken","configureOnPrimerError"],"mappings":"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","sourcesContent":["import { NativeModules } from 'react-native';\nimport type { ClientSessionActionsRequest } from './models/client-session-actions-request';\nimport type { PaymentInstrumentToken } from './models/payment-instrument-token';\nimport type { IPrimer } from './models/primer';\nimport type {\n OnClientSessionActionsCallback,\n OnDismissCallback,\n OnPrimerErrorCallback,\n OnTokenAddedToVaultCallback,\n OnTokenizeSuccessCallback,\n} from './models/primer-callbacks';\nimport type { PrimerConfig } from './models/primer-config';\nimport type { PrimerError } from './models/primer-error';\nimport type {\n PrimerIntent,\n PrimerPaymentMethodIntent,\n} from './models/primer-intent';\nimport type { PrimerSettings } from './models/primer-settings';\nimport type { PrimerTheme } from './models/primer-theme';\nimport { parseCallback } from './utils';\n\nconst { PrimerRN: NativeModule } = NativeModules;\n\nexport const PrimerNativeMapping: IPrimer = {\n showUniversalCheckout(token: String, config: PrimerConfig): void {\n configureIntent({ vault: false, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showVaultManager(token: String, config: PrimerConfig): void {\n configureIntent({ vault: true, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showPaymentMethod(\n token: String,\n intent: PrimerPaymentMethodIntent,\n config: PrimerConfig\n ): void {\n configureIntent(intent);\n configure(config);\n NativeModule.initialize(token);\n },\n\n // todo: refactor\n // fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {\n // configure(config);\n // NativeModule.fetchSavedPaymentInstruments(token);\n // },\n\n dispose(): void {\n NativeModule.dispose();\n },\n};\n\nfunction configure(config: PrimerConfig): void {\n configureTheme(config.theme);\n configureSettings(config.settings);\n configureOnVaultSuccess(config.onTokenAddedToVault);\n configureOnDismiss(config.onDismiss);\n configureOnError(config.onError);\n configureOnTokenizeSuccess(config.onTokenizeSuccess);\n configureOnClientSessionActions(config.onClientSessionActions);\n configureOnResumeSuccess(config.onResumeSuccess);\n}\n\nfunction configureSettings(settings: PrimerSettings = {}): void {\n const data = JSON.stringify(settings);\n NativeModule.configureSettings(data);\n}\n\nfunction configureTheme(theme: PrimerTheme = {}): void {\n const data = JSON.stringify(theme);\n NativeModule.configureTheme(data);\n}\n\nfunction configureIntent(\n intent: PrimerIntent = { vault: false, paymentMethod: 'Any' }\n): void {\n const data = JSON.stringify(intent);\n NativeModule.configureIntent(data);\n}\n\nfunction resume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.resume(data);\n}\n\nfunction configureOnTokenizeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnTokenizeSuccess((data: any) => {\n try {\n const parsedData = JSON.parse(data) as PaymentInstrumentToken;\n callback(parsedData, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction actionResume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.actionResume(data);\n}\n\nfunction configureOnClientSessionActions(\n callback: OnClientSessionActionsCallback = (_, __) => {\n NativeModule.configureOnClientSessionActions((___: any) => {\n actionResume({ error: null, token: null });\n configureOnClientSessionActions(callback);\n });\n }\n) {\n NativeModule.configureOnClientSessionActions((data: any) => {\n try {\n const parsedData = JSON.parse(data) as ClientSessionActionsRequest;\n callback(parsedData, {\n handleError: (error) => actionResume({ error, token: null }),\n handleSuccess: () => actionResume({ error: null, token: null }),\n handleNewClientToken: (token) => actionResume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => actionResume({ error, token: null }),\n resumeWithSuccess: (token) => actionResume({ error: null, token }),\n });\n configureOnClientSessionActions(callback);\n } catch (e) {\n console.log('[OnClientSessionActions]', 'failed to parse json', e);\n }\n });\n}\n\nfunction configureOnResumeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnResumeSuccess((paymentMethodToken: any) => {\n try {\n callback(paymentMethodToken, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction configureOnVaultSuccess(\n callback: OnTokenAddedToVaultCallback = (_) => {}\n) {\n NativeModule.configureOnVaultSuccess((data: any) => {\n parseCallback<PaymentInstrumentToken>(data, callback);\n });\n}\n\nfunction configureOnDismiss(callback: OnDismissCallback = () => {}) {\n NativeModule.configureOnDismiss((_: any) => callback());\n}\n\nfunction configureOnError(callback: OnPrimerErrorCallback = (_) => {}) {\n NativeModule.configureOnPrimerError((data: any) => {\n parseCallback<PrimerError>(data, callback);\n });\n}\n\ninterface ResumeRequest {\n error: string | null;\n token: string | null;\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
const paymentMethods = ['
|
|
3
|
+
const paymentMethods = ['ADYEN_ALIPAY', 'ADYEN_DOTPAY', 'ADYEN_GIROPAY', 'ADYEN_IDEAL', 'ADYEN_MOBILEPAY', 'ADYEN_SOFORT', 'ADYEN_TRUSTLY', 'ADYEN_TWINT', 'ADYEN_VIPPS', 'APAYA', 'APPLE_PAY', 'ATOME', 'BUCKAROO_BANCONTACT', 'BUCKAROO_EPS', 'BUCKAROO_GIROPAY', 'BUCKAROO_IDEAL', 'BUCKAROO_SOFORT', 'GOCARDLESS', 'GOOGLE_PAY', 'HOOLAH', 'KLARNA', 'MOLLIE_BANCONTACT', 'MOLLIE_IDEAL', 'PAY_NL_BANCONTACT', 'PAY_NL_GIROPAY', 'PAY_NL_IDEAL', 'PAY_NL_PAYCONIQ', 'PAYMENT_CARD', 'PAYPAL', 'XFERS_PAYNOW'];
|
|
4
4
|
//# sourceMappingURL=primer-intent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["primer-intent.ts"],"names":["paymentMethods"],"mappings":";;AAAA,MAAMA,cAAc,GAAG,CACrB,
|
|
1
|
+
{"version":3,"sources":["primer-intent.ts"],"names":["paymentMethods"],"mappings":";;AAAA,MAAMA,cAAc,GAAG,CACrB,cADqB,EAErB,cAFqB,EAGrB,eAHqB,EAIrB,aAJqB,EAKrB,iBALqB,EAMrB,cANqB,EAOrB,eAPqB,EAQrB,aARqB,EASrB,aATqB,EAUrB,OAVqB,EAWrB,WAXqB,EAYrB,OAZqB,EAarB,qBAbqB,EAcrB,cAdqB,EAerB,kBAfqB,EAgBrB,gBAhBqB,EAiBrB,iBAjBqB,EAkBrB,YAlBqB,EAmBrB,YAnBqB,EAoBrB,QApBqB,EAqBrB,QArBqB,EAsBrB,mBAtBqB,EAuBrB,cAvBqB,EAwBrB,mBAxBqB,EAyBrB,gBAzBqB,EA0BrB,cA1BqB,EA2BrB,iBA3BqB,EA4BrB,cA5BqB,EA6BrB,QA7BqB,EA8BrB,cA9BqB,CAAvB","sourcesContent":["const paymentMethods = [\n 'ADYEN_ALIPAY',\n 'ADYEN_DOTPAY',\n 'ADYEN_GIROPAY',\n 'ADYEN_IDEAL',\n 'ADYEN_MOBILEPAY',\n 'ADYEN_SOFORT',\n 'ADYEN_TRUSTLY',\n 'ADYEN_TWINT',\n 'ADYEN_VIPPS',\n 'APAYA',\n 'APPLE_PAY',\n 'ATOME',\n 'BUCKAROO_BANCONTACT',\n 'BUCKAROO_EPS',\n 'BUCKAROO_GIROPAY',\n 'BUCKAROO_IDEAL',\n 'BUCKAROO_SOFORT',\n 'GOCARDLESS',\n 'GOOGLE_PAY',\n 'HOOLAH',\n 'KLARNA',\n 'MOLLIE_BANCONTACT',\n 'MOLLIE_IDEAL',\n 'PAY_NL_BANCONTACT',\n 'PAY_NL_GIROPAY',\n 'PAY_NL_IDEAL',\n 'PAY_NL_PAYCONIQ',\n 'PAYMENT_CARD',\n 'PAYPAL',\n 'XFERS_PAYNOW',\n] as const;\n\nexport type SinglePrimerPaymentMethod = typeof paymentMethods[number];\nexport interface AnyPrimerPaymentMethodIntent {\n vault: boolean;\n paymentMethod: 'Any';\n}\n\nexport type PrimerPaymentMethodIntent = ISinglePrimerPaymentMethodIntent;\n\ninterface ISinglePrimerPaymentMethodIntent {\n vault: boolean;\n paymentMethod: SinglePrimerPaymentMethod;\n}\n\nexport type PrimerIntent =\n | ISinglePrimerPaymentMethodIntent\n | AnyPrimerPaymentMethodIntent;\n"]}
|
package/lib/module/Primer.js
CHANGED
|
@@ -28,11 +28,11 @@ export const PrimerNativeMapping = {
|
|
|
28
28
|
NativeModule.initialize(token);
|
|
29
29
|
},
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
// todo: refactor
|
|
32
|
+
// fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {
|
|
33
|
+
// configure(config);
|
|
34
|
+
// NativeModule.fetchSavedPaymentInstruments(token);
|
|
35
|
+
// },
|
|
36
36
|
dispose() {
|
|
37
37
|
NativeModule.dispose();
|
|
38
38
|
}
|
|
@@ -48,7 +48,6 @@ function configure(config) {
|
|
|
48
48
|
configureOnTokenizeSuccess(config.onTokenizeSuccess);
|
|
49
49
|
configureOnClientSessionActions(config.onClientSessionActions);
|
|
50
50
|
configureOnResumeSuccess(config.onResumeSuccess);
|
|
51
|
-
configureOnSavedPaymentInstrumentsFetched(config.onSavedPaymentInstrumentsFetched);
|
|
52
51
|
}
|
|
53
52
|
|
|
54
53
|
function configureSettings(settings = {}) {
|
|
@@ -201,10 +200,4 @@ function configureOnError(callback = _ => {}) {
|
|
|
201
200
|
parseCallback(data, callback);
|
|
202
201
|
});
|
|
203
202
|
}
|
|
204
|
-
|
|
205
|
-
function configureOnSavedPaymentInstrumentsFetched(callback = _ => {}) {
|
|
206
|
-
NativeModule.configureOnSavedPaymentInstrumentsFetched(data => {
|
|
207
|
-
parseCallback(data, callback);
|
|
208
|
-
});
|
|
209
|
-
}
|
|
210
203
|
//# sourceMappingURL=Primer.js.map
|
package/lib/module/Primer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Primer.ts"],"names":["NativeModules","parseCallback","PrimerRN","NativeModule","PrimerNativeMapping","showUniversalCheckout","token","config","configureIntent","vault","paymentMethod","configure","initialize","showVaultManager","showPaymentMethod","intent","fetchSavedPaymentInstruments","dispose","configureTheme","theme","configureSettings","settings","configureOnVaultSuccess","onTokenAddedToVault","configureOnDismiss","onDismiss","configureOnError","onError","configureOnTokenizeSuccess","onTokenizeSuccess","configureOnClientSessionActions","onClientSessionActions","configureOnResumeSuccess","onResumeSuccess","configureOnSavedPaymentInstrumentsFetched","onSavedPaymentInstrumentsFetched","data","JSON","stringify","resume","request","callback","_","__","parsedData","parse","handleError","error","handleSuccess","handleNewClientToken","resumeWithError","resumeWithSuccess","e","console","log","actionResume","___","paymentMethodToken","configureOnPrimerError"],"mappings":"AAAA,SAASA,aAAT,QAA8B,cAA9B;AAoBA,SAASC,aAAT,QAA8B,SAA9B;AAEA,MAAM;AAAEC,EAAAA,QAAQ,EAAEC;AAAZ,IAA6BH,aAAnC;AAEA,OAAO,MAAMI,mBAA4B,GAAG;AAC1CC,EAAAA,qBAAqB,CAACC,KAAD,EAAgBC,MAAhB,EAA4C;AAC/DC,IAAAA,eAAe,CAAC;AAAEC,MAAAA,KAAK,EAAE,KAAT;AAAgBC,MAAAA,aAAa,EAAE;AAA/B,KAAD,CAAf;AACAC,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GALyC;;AAO1CO,EAAAA,gBAAgB,CAACP,KAAD,EAAgBC,MAAhB,EAA4C;AAC1DC,IAAAA,eAAe,CAAC;AAAEC,MAAAA,KAAK,EAAE,IAAT;AAAeC,MAAAA,aAAa,EAAE;AAA9B,KAAD,CAAf;AACAC,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GAXyC;;AAa1CQ,EAAAA,iBAAiB,CACfR,KADe,EAEfS,MAFe,EAGfR,MAHe,EAIT;AACNC,IAAAA,eAAe,CAACO,MAAD,CAAf;AACAJ,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GArByC;;AAuB1CU,EAAAA,4BAA4B,CAACV,KAAD,EAAgBC,MAAhB,EAA4C;AACtEI,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACa,4BAAb,CAA0CV,KAA1C;AACD,GA1ByC;;AA4B1CW,EAAAA,OAAO,GAAS;AACdd,IAAAA,YAAY,CAACc,OAAb;AACD;;AA9ByC,CAArC;;AAiCP,SAASN,SAAT,CAAmBJ,MAAnB,EAA+C;AAC7CW,EAAAA,cAAc,CAACX,MAAM,CAACY,KAAR,CAAd;AACAC,EAAAA,iBAAiB,CAACb,MAAM,CAACc,QAAR,CAAjB;AACAC,EAAAA,uBAAuB,CAACf,MAAM,CAACgB,mBAAR,CAAvB;AACAC,EAAAA,kBAAkB,CAACjB,MAAM,CAACkB,SAAR,CAAlB;AACAC,EAAAA,gBAAgB,CAACnB,MAAM,CAACoB,OAAR,CAAhB;AACAC,EAAAA,0BAA0B,CAACrB,MAAM,CAACsB,iBAAR,CAA1B;AACAC,EAAAA,+BAA+B,CAACvB,MAAM,CAACwB,sBAAR,CAA/B;AACAC,EAAAA,wBAAwB,CAACzB,MAAM,CAAC0B,eAAR,CAAxB;AACAC,EAAAA,yCAAyC,CACvC3B,MAAM,CAAC4B,gCADgC,CAAzC;AAGD;;AAED,SAASf,iBAAT,CAA2BC,QAAwB,GAAG,EAAtD,EAAgE;AAC9D,QAAMe,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAejB,QAAf,CAAb;AACAlB,EAAAA,YAAY,CAACiB,iBAAb,CAA+BgB,IAA/B;AACD;;AAED,SAASlB,cAAT,CAAwBC,KAAkB,GAAG,EAA7C,EAAuD;AACrD,QAAMiB,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAenB,KAAf,CAAb;AACAhB,EAAAA,YAAY,CAACe,cAAb,CAA4BkB,IAA5B;AACD;;AAED,SAAS5B,eAAT,CACEO,MAAoB,GAAG;AAAEN,EAAAA,KAAK,EAAE,KAAT;AAAgBC,EAAAA,aAAa,EAAE;AAA/B,CADzB,EAEQ;AACN,QAAM0B,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAevB,MAAf,CAAb;AACAZ,EAAAA,YAAY,CAACK,eAAb,CAA6B4B,IAA7B;AACD;;AAED,SAASG,MAAT,CAAgBC,OAAhB,EAAwC;AACtC,QAAMJ,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAeE,OAAf,CAAb;AACArC,EAAAA,YAAY,CAACoC,MAAb,CAAoBH,IAApB;AACD;;AAED,SAASR,0BAAT,CACEa,QAAmC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW,CAAE,CADrD,EAEE;AACAxC,EAAAA,YAAY,CAACyB,0BAAb,CAAyCQ,IAAD,IAAe;AACrD,QAAI;AACF,YAAMQ,UAAU,GAAGP,IAAI,CAACQ,KAAL,CAAWT,IAAX,CAAnB;AACAK,MAAAA,QAAQ,CAACG,UAAD,EAAa;AACnBE,QAAAA,WAAW,EAAGC,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADX;AAEnB0C,QAAAA,aAAa,EAAE,MAAMT,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFR;AAGnB2C,QAAAA,oBAAoB,EAAG3C,KAAD,IAAWiC,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD,CAHpB;AAInB;AACA4C,QAAAA,eAAe,EAAGH,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALf;AAMnB6C,QAAAA,iBAAiB,EAAG7C,KAAD,IAAWiC,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD;AANjB,OAAb,CAAR;AAQD,KAVD,CAUE,OAAO8C,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,sBAAZ,EAAoCF,CAApC;AACD;AACF,GAdD;AAeD;;AAED,SAASG,YAAT,CAAsBf,OAAtB,EAA8C;AAC5C,QAAMJ,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAeE,OAAf,CAAb;AACArC,EAAAA,YAAY,CAACoD,YAAb,CAA0BnB,IAA1B;AACD;;AAED,SAASN,+BAAT,CACEW,QAAwC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW;AACpDxC,EAAAA,YAAY,CAAC2B,+BAAb,CAA8C0B,GAAD,IAAc;AACzDD,IAAAA,YAAY,CAAC;AAAER,MAAAA,KAAK,EAAE,IAAT;AAAezC,MAAAA,KAAK,EAAE;AAAtB,KAAD,CAAZ;AACAwB,IAAAA,+BAA+B,CAACW,QAAD,CAA/B;AACD,GAHD;AAID,CANH,EAOE;AACAtC,EAAAA,YAAY,CAAC2B,+BAAb,CAA8CM,IAAD,IAAe;AAC1D,QAAI;AACF,YAAMQ,UAAU,GAAGP,IAAI,CAACQ,KAAL,CAAWT,IAAX,CAAnB;AACAK,MAAAA,QAAQ,CAACG,UAAD,EAAa;AACnBE,QAAAA,WAAW,EAAGC,KAAD,IAAWQ,YAAY,CAAC;AAAER,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADjB;AAEnB0C,QAAAA,aAAa,EAAE,MAAMO,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFd;AAGnB2C,QAAAA,oBAAoB,EAAG3C,KAAD,IAAWiD,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD,CAH1B;AAInB;AACA4C,QAAAA,eAAe,EAAGH,KAAD,IAAWQ,YAAY,CAAC;AAAER,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALrB;AAMnB6C,QAAAA,iBAAiB,EAAG7C,KAAD,IAAWiD,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD;AANvB,OAAb,CAAR;AAQAwB,MAAAA,+BAA+B,CAACW,QAAD,CAA/B;AACD,KAXD,CAWE,OAAOW,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,0BAAZ,EAAwC,sBAAxC,EAAgEF,CAAhE;AACD;AACF,GAfD;AAgBD;;AAED,SAASpB,wBAAT,CACES,QAAmC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW,CAAE,CADrD,EAEE;AACAxC,EAAAA,YAAY,CAAC6B,wBAAb,CAAuCyB,kBAAD,IAA6B;AACjE,QAAI;AACFhB,MAAAA,QAAQ,CAACgB,kBAAD,EAAqB;AAC3BX,QAAAA,WAAW,EAAGC,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADH;AAE3B0C,QAAAA,aAAa,EAAE,MAAMT,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFA;AAG3B2C,QAAAA,oBAAoB,EAAG3C,KAAD,IAAWiC,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD,CAHZ;AAI3B;AACA4C,QAAAA,eAAe,EAAGH,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAASzC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALP;AAM3B6C,QAAAA,iBAAiB,EAAG7C,KAAD,IAAWiC,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAezC,UAAAA;AAAf,SAAD;AANT,OAArB,CAAR;AAQD,KATD,CASE,OAAO8C,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,sBAAZ,EAAoCF,CAApC;AACD;AACF,GAbD;AAcD;;AAED,SAAS9B,uBAAT,CACEmB,QAAqC,GAAIC,CAAD,IAAO,CAAE,CADnD,EAEE;AACAvC,EAAAA,YAAY,CAACmB,uBAAb,CAAsCc,IAAD,IAAe;AAClDnC,IAAAA,aAAa,CAAyBmC,IAAzB,EAA+BK,QAA/B,CAAb;AACD,GAFD;AAGD;;AAED,SAASjB,kBAAT,CAA4BiB,QAA2B,GAAG,MAAM,CAAE,CAAlE,EAAoE;AAClEtC,EAAAA,YAAY,CAACqB,kBAAb,CAAiCkB,CAAD,IAAYD,QAAQ,EAApD;AACD;;AAED,SAASf,gBAAT,CAA0Be,QAA+B,GAAIC,CAAD,IAAO,CAAE,CAArE,EAAuE;AACrEvC,EAAAA,YAAY,CAACuD,sBAAb,CAAqCtB,IAAD,IAAe;AACjDnC,IAAAA,aAAa,CAAcmC,IAAd,EAAoBK,QAApB,CAAb;AACD,GAFD;AAGD;;AAED,SAASP,yCAAT,CACEO,QAAkD,GAAIC,CAAD,IAAO,CAAE,CADhE,EAEE;AACAvC,EAAAA,YAAY,CAAC+B,yCAAb,CAAwDE,IAAD,IAAe;AACpEnC,IAAAA,aAAa,CAA2BmC,IAA3B,EAAiCK,QAAjC,CAAb;AACD,GAFD;AAGD","sourcesContent":["import { NativeModules } from 'react-native';\nimport type { ClientSessionActionsRequest } from './models/client-session-actions-request';\nimport type { PaymentInstrumentToken } from './models/payment-instrument-token';\nimport type { IPrimer } from './models/primer';\nimport type {\n OnClientSessionActionsCallback,\n OnDismissCallback,\n OnPrimerErrorCallback,\n OnSavedPaymentInstrumentsFetchedCallback,\n OnTokenAddedToVaultCallback,\n OnTokenizeSuccessCallback,\n} from './models/primer-callbacks';\nimport type { PrimerConfig } from './models/primer-config';\nimport type { PrimerError } from './models/primer-error';\nimport type {\n PrimerIntent,\n PrimerPaymentMethodIntent,\n} from './models/primer-intent';\nimport type { PrimerSettings } from './models/primer-settings';\nimport type { PrimerTheme } from './models/primer-theme';\nimport { parseCallback } from './utils';\n\nconst { PrimerRN: NativeModule } = NativeModules;\n\nexport const PrimerNativeMapping: IPrimer = {\n showUniversalCheckout(token: String, config: PrimerConfig): void {\n configureIntent({ vault: false, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showVaultManager(token: String, config: PrimerConfig): void {\n configureIntent({ vault: true, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showPaymentMethod(\n token: String,\n intent: PrimerPaymentMethodIntent,\n config: PrimerConfig\n ): void {\n configureIntent(intent);\n configure(config);\n NativeModule.initialize(token);\n },\n\n fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {\n configure(config);\n NativeModule.fetchSavedPaymentInstruments(token);\n },\n\n dispose(): void {\n NativeModule.dispose();\n },\n};\n\nfunction configure(config: PrimerConfig): void {\n configureTheme(config.theme);\n configureSettings(config.settings);\n configureOnVaultSuccess(config.onTokenAddedToVault);\n configureOnDismiss(config.onDismiss);\n configureOnError(config.onError);\n configureOnTokenizeSuccess(config.onTokenizeSuccess);\n configureOnClientSessionActions(config.onClientSessionActions);\n configureOnResumeSuccess(config.onResumeSuccess);\n configureOnSavedPaymentInstrumentsFetched(\n config.onSavedPaymentInstrumentsFetched\n );\n}\n\nfunction configureSettings(settings: PrimerSettings = {}): void {\n const data = JSON.stringify(settings);\n NativeModule.configureSettings(data);\n}\n\nfunction configureTheme(theme: PrimerTheme = {}): void {\n const data = JSON.stringify(theme);\n NativeModule.configureTheme(data);\n}\n\nfunction configureIntent(\n intent: PrimerIntent = { vault: false, paymentMethod: 'Any' }\n): void {\n const data = JSON.stringify(intent);\n NativeModule.configureIntent(data);\n}\n\nfunction resume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.resume(data);\n}\n\nfunction configureOnTokenizeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnTokenizeSuccess((data: any) => {\n try {\n const parsedData = JSON.parse(data) as PaymentInstrumentToken;\n callback(parsedData, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction actionResume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.actionResume(data);\n}\n\nfunction configureOnClientSessionActions(\n callback: OnClientSessionActionsCallback = (_, __) => {\n NativeModule.configureOnClientSessionActions((___: any) => {\n actionResume({ error: null, token: null });\n configureOnClientSessionActions(callback);\n });\n }\n) {\n NativeModule.configureOnClientSessionActions((data: any) => {\n try {\n const parsedData = JSON.parse(data) as ClientSessionActionsRequest;\n callback(parsedData, {\n handleError: (error) => actionResume({ error, token: null }),\n handleSuccess: () => actionResume({ error: null, token: null }),\n handleNewClientToken: (token) => actionResume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => actionResume({ error, token: null }),\n resumeWithSuccess: (token) => actionResume({ error: null, token }),\n });\n configureOnClientSessionActions(callback);\n } catch (e) {\n console.log('[OnClientSessionActions]', 'failed to parse json', e);\n }\n });\n}\n\nfunction configureOnResumeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnResumeSuccess((paymentMethodToken: any) => {\n try {\n callback(paymentMethodToken, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction configureOnVaultSuccess(\n callback: OnTokenAddedToVaultCallback = (_) => {}\n) {\n NativeModule.configureOnVaultSuccess((data: any) => {\n parseCallback<PaymentInstrumentToken>(data, callback);\n });\n}\n\nfunction configureOnDismiss(callback: OnDismissCallback = () => {}) {\n NativeModule.configureOnDismiss((_: any) => callback());\n}\n\nfunction configureOnError(callback: OnPrimerErrorCallback = (_) => {}) {\n NativeModule.configureOnPrimerError((data: any) => {\n parseCallback<PrimerError>(data, callback);\n });\n}\n\nfunction configureOnSavedPaymentInstrumentsFetched(\n callback: OnSavedPaymentInstrumentsFetchedCallback = (_) => {}\n) {\n NativeModule.configureOnSavedPaymentInstrumentsFetched((data: any) => {\n parseCallback<PaymentInstrumentToken[]>(data, callback);\n });\n}\n\ninterface ResumeRequest {\n error: string | null;\n token: string | null;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Primer.ts"],"names":["NativeModules","parseCallback","PrimerRN","NativeModule","PrimerNativeMapping","showUniversalCheckout","token","config","configureIntent","vault","paymentMethod","configure","initialize","showVaultManager","showPaymentMethod","intent","dispose","configureTheme","theme","configureSettings","settings","configureOnVaultSuccess","onTokenAddedToVault","configureOnDismiss","onDismiss","configureOnError","onError","configureOnTokenizeSuccess","onTokenizeSuccess","configureOnClientSessionActions","onClientSessionActions","configureOnResumeSuccess","onResumeSuccess","data","JSON","stringify","resume","request","callback","_","__","parsedData","parse","handleError","error","handleSuccess","handleNewClientToken","resumeWithError","resumeWithSuccess","e","console","log","actionResume","___","paymentMethodToken","configureOnPrimerError"],"mappings":"AAAA,SAASA,aAAT,QAA8B,cAA9B;AAmBA,SAASC,aAAT,QAA8B,SAA9B;AAEA,MAAM;AAAEC,EAAAA,QAAQ,EAAEC;AAAZ,IAA6BH,aAAnC;AAEA,OAAO,MAAMI,mBAA4B,GAAG;AAC1CC,EAAAA,qBAAqB,CAACC,KAAD,EAAgBC,MAAhB,EAA4C;AAC/DC,IAAAA,eAAe,CAAC;AAAEC,MAAAA,KAAK,EAAE,KAAT;AAAgBC,MAAAA,aAAa,EAAE;AAA/B,KAAD,CAAf;AACAC,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GALyC;;AAO1CO,EAAAA,gBAAgB,CAACP,KAAD,EAAgBC,MAAhB,EAA4C;AAC1DC,IAAAA,eAAe,CAAC;AAAEC,MAAAA,KAAK,EAAE,IAAT;AAAeC,MAAAA,aAAa,EAAE;AAA9B,KAAD,CAAf;AACAC,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GAXyC;;AAa1CQ,EAAAA,iBAAiB,CACfR,KADe,EAEfS,MAFe,EAGfR,MAHe,EAIT;AACNC,IAAAA,eAAe,CAACO,MAAD,CAAf;AACAJ,IAAAA,SAAS,CAACJ,MAAD,CAAT;AACAJ,IAAAA,YAAY,CAACS,UAAb,CAAwBN,KAAxB;AACD,GArByC;;AAuB1C;AACA;AACA;AACA;AACA;AAEAU,EAAAA,OAAO,GAAS;AACdb,IAAAA,YAAY,CAACa,OAAb;AACD;;AA/ByC,CAArC;;AAkCP,SAASL,SAAT,CAAmBJ,MAAnB,EAA+C;AAC7CU,EAAAA,cAAc,CAACV,MAAM,CAACW,KAAR,CAAd;AACAC,EAAAA,iBAAiB,CAACZ,MAAM,CAACa,QAAR,CAAjB;AACAC,EAAAA,uBAAuB,CAACd,MAAM,CAACe,mBAAR,CAAvB;AACAC,EAAAA,kBAAkB,CAAChB,MAAM,CAACiB,SAAR,CAAlB;AACAC,EAAAA,gBAAgB,CAAClB,MAAM,CAACmB,OAAR,CAAhB;AACAC,EAAAA,0BAA0B,CAACpB,MAAM,CAACqB,iBAAR,CAA1B;AACAC,EAAAA,+BAA+B,CAACtB,MAAM,CAACuB,sBAAR,CAA/B;AACAC,EAAAA,wBAAwB,CAACxB,MAAM,CAACyB,eAAR,CAAxB;AACD;;AAED,SAASb,iBAAT,CAA2BC,QAAwB,GAAG,EAAtD,EAAgE;AAC9D,QAAMa,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAef,QAAf,CAAb;AACAjB,EAAAA,YAAY,CAACgB,iBAAb,CAA+Bc,IAA/B;AACD;;AAED,SAAShB,cAAT,CAAwBC,KAAkB,GAAG,EAA7C,EAAuD;AACrD,QAAMe,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAejB,KAAf,CAAb;AACAf,EAAAA,YAAY,CAACc,cAAb,CAA4BgB,IAA5B;AACD;;AAED,SAASzB,eAAT,CACEO,MAAoB,GAAG;AAAEN,EAAAA,KAAK,EAAE,KAAT;AAAgBC,EAAAA,aAAa,EAAE;AAA/B,CADzB,EAEQ;AACN,QAAMuB,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAepB,MAAf,CAAb;AACAZ,EAAAA,YAAY,CAACK,eAAb,CAA6ByB,IAA7B;AACD;;AAED,SAASG,MAAT,CAAgBC,OAAhB,EAAwC;AACtC,QAAMJ,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAeE,OAAf,CAAb;AACAlC,EAAAA,YAAY,CAACiC,MAAb,CAAoBH,IAApB;AACD;;AAED,SAASN,0BAAT,CACEW,QAAmC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW,CAAE,CADrD,EAEE;AACArC,EAAAA,YAAY,CAACwB,0BAAb,CAAyCM,IAAD,IAAe;AACrD,QAAI;AACF,YAAMQ,UAAU,GAAGP,IAAI,CAACQ,KAAL,CAAWT,IAAX,CAAnB;AACAK,MAAAA,QAAQ,CAACG,UAAD,EAAa;AACnBE,QAAAA,WAAW,EAAGC,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADX;AAEnBuC,QAAAA,aAAa,EAAE,MAAMT,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFR;AAGnBwC,QAAAA,oBAAoB,EAAGxC,KAAD,IAAW8B,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD,CAHpB;AAInB;AACAyC,QAAAA,eAAe,EAAGH,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALf;AAMnB0C,QAAAA,iBAAiB,EAAG1C,KAAD,IAAW8B,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD;AANjB,OAAb,CAAR;AAQD,KAVD,CAUE,OAAO2C,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,sBAAZ,EAAoCF,CAApC;AACD;AACF,GAdD;AAeD;;AAED,SAASG,YAAT,CAAsBf,OAAtB,EAA8C;AAC5C,QAAMJ,IAAI,GAAGC,IAAI,CAACC,SAAL,CAAeE,OAAf,CAAb;AACAlC,EAAAA,YAAY,CAACiD,YAAb,CAA0BnB,IAA1B;AACD;;AAED,SAASJ,+BAAT,CACES,QAAwC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW;AACpDrC,EAAAA,YAAY,CAAC0B,+BAAb,CAA8CwB,GAAD,IAAc;AACzDD,IAAAA,YAAY,CAAC;AAAER,MAAAA,KAAK,EAAE,IAAT;AAAetC,MAAAA,KAAK,EAAE;AAAtB,KAAD,CAAZ;AACAuB,IAAAA,+BAA+B,CAACS,QAAD,CAA/B;AACD,GAHD;AAID,CANH,EAOE;AACAnC,EAAAA,YAAY,CAAC0B,+BAAb,CAA8CI,IAAD,IAAe;AAC1D,QAAI;AACF,YAAMQ,UAAU,GAAGP,IAAI,CAACQ,KAAL,CAAWT,IAAX,CAAnB;AACAK,MAAAA,QAAQ,CAACG,UAAD,EAAa;AACnBE,QAAAA,WAAW,EAAGC,KAAD,IAAWQ,YAAY,CAAC;AAAER,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADjB;AAEnBuC,QAAAA,aAAa,EAAE,MAAMO,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFd;AAGnBwC,QAAAA,oBAAoB,EAAGxC,KAAD,IAAW8C,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD,CAH1B;AAInB;AACAyC,QAAAA,eAAe,EAAGH,KAAD,IAAWQ,YAAY,CAAC;AAAER,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALrB;AAMnB0C,QAAAA,iBAAiB,EAAG1C,KAAD,IAAW8C,YAAY,CAAC;AAAER,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD;AANvB,OAAb,CAAR;AAQAuB,MAAAA,+BAA+B,CAACS,QAAD,CAA/B;AACD,KAXD,CAWE,OAAOW,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,0BAAZ,EAAwC,sBAAxC,EAAgEF,CAAhE;AACD;AACF,GAfD;AAgBD;;AAED,SAASlB,wBAAT,CACEO,QAAmC,GAAG,CAACC,CAAD,EAAIC,EAAJ,KAAW,CAAE,CADrD,EAEE;AACArC,EAAAA,YAAY,CAAC4B,wBAAb,CAAuCuB,kBAAD,IAA6B;AACjE,QAAI;AACFhB,MAAAA,QAAQ,CAACgB,kBAAD,EAAqB;AAC3BX,QAAAA,WAAW,EAAGC,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CADH;AAE3BuC,QAAAA,aAAa,EAAE,MAAMT,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA,KAAK,EAAE;AAAtB,SAAD,CAFA;AAG3BwC,QAAAA,oBAAoB,EAAGxC,KAAD,IAAW8B,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD,CAHZ;AAI3B;AACAyC,QAAAA,eAAe,EAAGH,KAAD,IAAWR,MAAM,CAAC;AAAEQ,UAAAA,KAAF;AAAStC,UAAAA,KAAK,EAAE;AAAhB,SAAD,CALP;AAM3B0C,QAAAA,iBAAiB,EAAG1C,KAAD,IAAW8B,MAAM,CAAC;AAAEQ,UAAAA,KAAK,EAAE,IAAT;AAAetC,UAAAA;AAAf,SAAD;AANT,OAArB,CAAR;AAQD,KATD,CASE,OAAO2C,CAAP,EAAU;AACVC,MAAAA,OAAO,CAACC,GAAR,CAAY,sBAAZ,EAAoCF,CAApC;AACD;AACF,GAbD;AAcD;;AAED,SAAS5B,uBAAT,CACEiB,QAAqC,GAAIC,CAAD,IAAO,CAAE,CADnD,EAEE;AACApC,EAAAA,YAAY,CAACkB,uBAAb,CAAsCY,IAAD,IAAe;AAClDhC,IAAAA,aAAa,CAAyBgC,IAAzB,EAA+BK,QAA/B,CAAb;AACD,GAFD;AAGD;;AAED,SAASf,kBAAT,CAA4Be,QAA2B,GAAG,MAAM,CAAE,CAAlE,EAAoE;AAClEnC,EAAAA,YAAY,CAACoB,kBAAb,CAAiCgB,CAAD,IAAYD,QAAQ,EAApD;AACD;;AAED,SAASb,gBAAT,CAA0Ba,QAA+B,GAAIC,CAAD,IAAO,CAAE,CAArE,EAAuE;AACrEpC,EAAAA,YAAY,CAACoD,sBAAb,CAAqCtB,IAAD,IAAe;AACjDhC,IAAAA,aAAa,CAAcgC,IAAd,EAAoBK,QAApB,CAAb;AACD,GAFD;AAGD","sourcesContent":["import { NativeModules } from 'react-native';\nimport type { ClientSessionActionsRequest } from './models/client-session-actions-request';\nimport type { PaymentInstrumentToken } from './models/payment-instrument-token';\nimport type { IPrimer } from './models/primer';\nimport type {\n OnClientSessionActionsCallback,\n OnDismissCallback,\n OnPrimerErrorCallback,\n OnTokenAddedToVaultCallback,\n OnTokenizeSuccessCallback,\n} from './models/primer-callbacks';\nimport type { PrimerConfig } from './models/primer-config';\nimport type { PrimerError } from './models/primer-error';\nimport type {\n PrimerIntent,\n PrimerPaymentMethodIntent,\n} from './models/primer-intent';\nimport type { PrimerSettings } from './models/primer-settings';\nimport type { PrimerTheme } from './models/primer-theme';\nimport { parseCallback } from './utils';\n\nconst { PrimerRN: NativeModule } = NativeModules;\n\nexport const PrimerNativeMapping: IPrimer = {\n showUniversalCheckout(token: String, config: PrimerConfig): void {\n configureIntent({ vault: false, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showVaultManager(token: String, config: PrimerConfig): void {\n configureIntent({ vault: true, paymentMethod: 'Any' });\n configure(config);\n NativeModule.initialize(token);\n },\n\n showPaymentMethod(\n token: String,\n intent: PrimerPaymentMethodIntent,\n config: PrimerConfig\n ): void {\n configureIntent(intent);\n configure(config);\n NativeModule.initialize(token);\n },\n\n // todo: refactor\n // fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {\n // configure(config);\n // NativeModule.fetchSavedPaymentInstruments(token);\n // },\n\n dispose(): void {\n NativeModule.dispose();\n },\n};\n\nfunction configure(config: PrimerConfig): void {\n configureTheme(config.theme);\n configureSettings(config.settings);\n configureOnVaultSuccess(config.onTokenAddedToVault);\n configureOnDismiss(config.onDismiss);\n configureOnError(config.onError);\n configureOnTokenizeSuccess(config.onTokenizeSuccess);\n configureOnClientSessionActions(config.onClientSessionActions);\n configureOnResumeSuccess(config.onResumeSuccess);\n}\n\nfunction configureSettings(settings: PrimerSettings = {}): void {\n const data = JSON.stringify(settings);\n NativeModule.configureSettings(data);\n}\n\nfunction configureTheme(theme: PrimerTheme = {}): void {\n const data = JSON.stringify(theme);\n NativeModule.configureTheme(data);\n}\n\nfunction configureIntent(\n intent: PrimerIntent = { vault: false, paymentMethod: 'Any' }\n): void {\n const data = JSON.stringify(intent);\n NativeModule.configureIntent(data);\n}\n\nfunction resume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.resume(data);\n}\n\nfunction configureOnTokenizeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnTokenizeSuccess((data: any) => {\n try {\n const parsedData = JSON.parse(data) as PaymentInstrumentToken;\n callback(parsedData, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction actionResume(request: ResumeRequest) {\n const data = JSON.stringify(request);\n NativeModule.actionResume(data);\n}\n\nfunction configureOnClientSessionActions(\n callback: OnClientSessionActionsCallback = (_, __) => {\n NativeModule.configureOnClientSessionActions((___: any) => {\n actionResume({ error: null, token: null });\n configureOnClientSessionActions(callback);\n });\n }\n) {\n NativeModule.configureOnClientSessionActions((data: any) => {\n try {\n const parsedData = JSON.parse(data) as ClientSessionActionsRequest;\n callback(parsedData, {\n handleError: (error) => actionResume({ error, token: null }),\n handleSuccess: () => actionResume({ error: null, token: null }),\n handleNewClientToken: (token) => actionResume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => actionResume({ error, token: null }),\n resumeWithSuccess: (token) => actionResume({ error: null, token }),\n });\n configureOnClientSessionActions(callback);\n } catch (e) {\n console.log('[OnClientSessionActions]', 'failed to parse json', e);\n }\n });\n}\n\nfunction configureOnResumeSuccess(\n callback: OnTokenizeSuccessCallback = (_, __) => {}\n) {\n NativeModule.configureOnResumeSuccess((paymentMethodToken: any) => {\n try {\n callback(paymentMethodToken, {\n handleError: (error) => resume({ error, token: null }),\n handleSuccess: () => resume({ error: null, token: null }),\n handleNewClientToken: (token) => resume({ error: null, token }),\n // deprecated\n resumeWithError: (error) => resume({ error, token: null }),\n resumeWithSuccess: (token) => resume({ error: null, token }),\n });\n } catch (e) {\n console.log('failed to parse json', e);\n }\n });\n}\n\nfunction configureOnVaultSuccess(\n callback: OnTokenAddedToVaultCallback = (_) => {}\n) {\n NativeModule.configureOnVaultSuccess((data: any) => {\n parseCallback<PaymentInstrumentToken>(data, callback);\n });\n}\n\nfunction configureOnDismiss(callback: OnDismissCallback = () => {}) {\n NativeModule.configureOnDismiss((_: any) => callback());\n}\n\nfunction configureOnError(callback: OnPrimerErrorCallback = (_) => {}) {\n NativeModule.configureOnPrimerError((data: any) => {\n parseCallback<PrimerError>(data, callback);\n });\n}\n\ninterface ResumeRequest {\n error: string | null;\n token: string | null;\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const paymentMethods = ['
|
|
1
|
+
const paymentMethods = ['ADYEN_ALIPAY', 'ADYEN_DOTPAY', 'ADYEN_GIROPAY', 'ADYEN_IDEAL', 'ADYEN_MOBILEPAY', 'ADYEN_SOFORT', 'ADYEN_TRUSTLY', 'ADYEN_TWINT', 'ADYEN_VIPPS', 'APAYA', 'APPLE_PAY', 'ATOME', 'BUCKAROO_BANCONTACT', 'BUCKAROO_EPS', 'BUCKAROO_GIROPAY', 'BUCKAROO_IDEAL', 'BUCKAROO_SOFORT', 'GOCARDLESS', 'GOOGLE_PAY', 'HOOLAH', 'KLARNA', 'MOLLIE_BANCONTACT', 'MOLLIE_IDEAL', 'PAY_NL_BANCONTACT', 'PAY_NL_GIROPAY', 'PAY_NL_IDEAL', 'PAY_NL_PAYCONIQ', 'PAYMENT_CARD', 'PAYPAL', 'XFERS_PAYNOW'];
|
|
2
2
|
//# sourceMappingURL=primer-intent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["primer-intent.ts"],"names":["paymentMethods"],"mappings":"AAAA,MAAMA,cAAc,GAAG,CACrB,
|
|
1
|
+
{"version":3,"sources":["primer-intent.ts"],"names":["paymentMethods"],"mappings":"AAAA,MAAMA,cAAc,GAAG,CACrB,cADqB,EAErB,cAFqB,EAGrB,eAHqB,EAIrB,aAJqB,EAKrB,iBALqB,EAMrB,cANqB,EAOrB,eAPqB,EAQrB,aARqB,EASrB,aATqB,EAUrB,OAVqB,EAWrB,WAXqB,EAYrB,OAZqB,EAarB,qBAbqB,EAcrB,cAdqB,EAerB,kBAfqB,EAgBrB,gBAhBqB,EAiBrB,iBAjBqB,EAkBrB,YAlBqB,EAmBrB,YAnBqB,EAoBrB,QApBqB,EAqBrB,QArBqB,EAsBrB,mBAtBqB,EAuBrB,cAvBqB,EAwBrB,mBAxBqB,EAyBrB,gBAzBqB,EA0BrB,cA1BqB,EA2BrB,iBA3BqB,EA4BrB,cA5BqB,EA6BrB,QA7BqB,EA8BrB,cA9BqB,CAAvB","sourcesContent":["const paymentMethods = [\n 'ADYEN_ALIPAY',\n 'ADYEN_DOTPAY',\n 'ADYEN_GIROPAY',\n 'ADYEN_IDEAL',\n 'ADYEN_MOBILEPAY',\n 'ADYEN_SOFORT',\n 'ADYEN_TRUSTLY',\n 'ADYEN_TWINT',\n 'ADYEN_VIPPS',\n 'APAYA',\n 'APPLE_PAY',\n 'ATOME',\n 'BUCKAROO_BANCONTACT',\n 'BUCKAROO_EPS',\n 'BUCKAROO_GIROPAY',\n 'BUCKAROO_IDEAL',\n 'BUCKAROO_SOFORT',\n 'GOCARDLESS',\n 'GOOGLE_PAY',\n 'HOOLAH',\n 'KLARNA',\n 'MOLLIE_BANCONTACT',\n 'MOLLIE_IDEAL',\n 'PAY_NL_BANCONTACT',\n 'PAY_NL_GIROPAY',\n 'PAY_NL_IDEAL',\n 'PAY_NL_PAYCONIQ',\n 'PAYMENT_CARD',\n 'PAYPAL',\n 'XFERS_PAYNOW',\n] as const;\n\nexport type SinglePrimerPaymentMethod = typeof paymentMethods[number];\nexport interface AnyPrimerPaymentMethodIntent {\n vault: boolean;\n paymentMethod: 'Any';\n}\n\nexport type PrimerPaymentMethodIntent = ISinglePrimerPaymentMethodIntent;\n\ninterface ISinglePrimerPaymentMethodIntent {\n vault: boolean;\n paymentMethod: SinglePrimerPaymentMethod;\n}\n\nexport type PrimerIntent =\n | ISinglePrimerPaymentMethodIntent\n | AnyPrimerPaymentMethodIntent;\n"]}
|
|
@@ -4,8 +4,12 @@ interface IClientSessionActionsRequest {
|
|
|
4
4
|
}
|
|
5
5
|
declare type ClientSessionAction = IClientSessionAction;
|
|
6
6
|
interface IClientSessionAction {
|
|
7
|
-
type: '
|
|
7
|
+
type: 'SELECT_PAYMENT_METHOD' | 'UNSELECT_PAYMENT_METHOD' | 'SET_BILLING_ADDRESS';
|
|
8
8
|
paymentMethodType?: string;
|
|
9
9
|
network?: string;
|
|
10
|
+
params?: IActionParams;
|
|
11
|
+
}
|
|
12
|
+
interface IActionParams {
|
|
13
|
+
billingAddress: Record<string, string | null>;
|
|
10
14
|
}
|
|
11
15
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const paymentMethods: readonly ["
|
|
1
|
+
declare const paymentMethods: readonly ["ADYEN_ALIPAY", "ADYEN_DOTPAY", "ADYEN_GIROPAY", "ADYEN_IDEAL", "ADYEN_MOBILEPAY", "ADYEN_SOFORT", "ADYEN_TRUSTLY", "ADYEN_TWINT", "ADYEN_VIPPS", "APAYA", "APPLE_PAY", "ATOME", "BUCKAROO_BANCONTACT", "BUCKAROO_EPS", "BUCKAROO_GIROPAY", "BUCKAROO_IDEAL", "BUCKAROO_SOFORT", "GOCARDLESS", "GOOGLE_PAY", "HOOLAH", "KLARNA", "MOLLIE_BANCONTACT", "MOLLIE_IDEAL", "PAY_NL_BANCONTACT", "PAY_NL_GIROPAY", "PAY_NL_IDEAL", "PAY_NL_PAYCONIQ", "PAYMENT_CARD", "PAYPAL", "XFERS_PAYNOW"];
|
|
2
2
|
export declare type SinglePrimerPaymentMethod = typeof paymentMethods[number];
|
|
3
3
|
export interface AnyPrimerPaymentMethodIntent {
|
|
4
4
|
vault: boolean;
|
|
@@ -26,12 +26,6 @@ export interface IPrimer {
|
|
|
26
26
|
* @param config Configuration for the SDK.
|
|
27
27
|
*/
|
|
28
28
|
showPaymentMethod(token: String, intent: PrimerPaymentMethodIntent, config: PrimerConfig): void;
|
|
29
|
-
/**
|
|
30
|
-
* Prompt the SDK to fetch saved payment instruments from Primer's vault.
|
|
31
|
-
* Use the onSavedPaymentInstrumentsFetched callback in {@link PrimerConfig}
|
|
32
|
-
* to handle returned saved payment instruments.
|
|
33
|
-
*/
|
|
34
|
-
fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void;
|
|
35
29
|
/**
|
|
36
30
|
* remove all listeners & callbacks.
|
|
37
31
|
*/
|
package/package.json
CHANGED
package/src/Primer.ts
CHANGED
|
@@ -6,7 +6,6 @@ import type {
|
|
|
6
6
|
OnClientSessionActionsCallback,
|
|
7
7
|
OnDismissCallback,
|
|
8
8
|
OnPrimerErrorCallback,
|
|
9
|
-
OnSavedPaymentInstrumentsFetchedCallback,
|
|
10
9
|
OnTokenAddedToVaultCallback,
|
|
11
10
|
OnTokenizeSuccessCallback,
|
|
12
11
|
} from './models/primer-callbacks';
|
|
@@ -45,10 +44,11 @@ export const PrimerNativeMapping: IPrimer = {
|
|
|
45
44
|
NativeModule.initialize(token);
|
|
46
45
|
},
|
|
47
46
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
47
|
+
// todo: refactor
|
|
48
|
+
// fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void {
|
|
49
|
+
// configure(config);
|
|
50
|
+
// NativeModule.fetchSavedPaymentInstruments(token);
|
|
51
|
+
// },
|
|
52
52
|
|
|
53
53
|
dispose(): void {
|
|
54
54
|
NativeModule.dispose();
|
|
@@ -64,9 +64,6 @@ function configure(config: PrimerConfig): void {
|
|
|
64
64
|
configureOnTokenizeSuccess(config.onTokenizeSuccess);
|
|
65
65
|
configureOnClientSessionActions(config.onClientSessionActions);
|
|
66
66
|
configureOnResumeSuccess(config.onResumeSuccess);
|
|
67
|
-
configureOnSavedPaymentInstrumentsFetched(
|
|
68
|
-
config.onSavedPaymentInstrumentsFetched
|
|
69
|
-
);
|
|
70
67
|
}
|
|
71
68
|
|
|
72
69
|
function configureSettings(settings: PrimerSettings = {}): void {
|
|
@@ -179,14 +176,6 @@ function configureOnError(callback: OnPrimerErrorCallback = (_) => {}) {
|
|
|
179
176
|
});
|
|
180
177
|
}
|
|
181
178
|
|
|
182
|
-
function configureOnSavedPaymentInstrumentsFetched(
|
|
183
|
-
callback: OnSavedPaymentInstrumentsFetchedCallback = (_) => {}
|
|
184
|
-
) {
|
|
185
|
-
NativeModule.configureOnSavedPaymentInstrumentsFetched((data: any) => {
|
|
186
|
-
parseCallback<PaymentInstrumentToken[]>(data, callback);
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
|
|
190
179
|
interface ResumeRequest {
|
|
191
180
|
error: string | null;
|
|
192
181
|
token: string | null;
|
|
@@ -7,7 +7,15 @@ interface IClientSessionActionsRequest {
|
|
|
7
7
|
type ClientSessionAction = IClientSessionAction;
|
|
8
8
|
|
|
9
9
|
interface IClientSessionAction {
|
|
10
|
-
type:
|
|
10
|
+
type:
|
|
11
|
+
| 'SELECT_PAYMENT_METHOD'
|
|
12
|
+
| 'UNSELECT_PAYMENT_METHOD'
|
|
13
|
+
| 'SET_BILLING_ADDRESS';
|
|
11
14
|
paymentMethodType?: string;
|
|
12
15
|
network?: string;
|
|
16
|
+
params?: IActionParams;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
interface IActionParams {
|
|
20
|
+
billingAddress: Record<string, string | null>;
|
|
13
21
|
}
|
|
@@ -1,10 +1,34 @@
|
|
|
1
1
|
const paymentMethods = [
|
|
2
|
-
'
|
|
3
|
-
'
|
|
4
|
-
'
|
|
5
|
-
'
|
|
6
|
-
'
|
|
7
|
-
'
|
|
2
|
+
'ADYEN_ALIPAY',
|
|
3
|
+
'ADYEN_DOTPAY',
|
|
4
|
+
'ADYEN_GIROPAY',
|
|
5
|
+
'ADYEN_IDEAL',
|
|
6
|
+
'ADYEN_MOBILEPAY',
|
|
7
|
+
'ADYEN_SOFORT',
|
|
8
|
+
'ADYEN_TRUSTLY',
|
|
9
|
+
'ADYEN_TWINT',
|
|
10
|
+
'ADYEN_VIPPS',
|
|
11
|
+
'APAYA',
|
|
12
|
+
'APPLE_PAY',
|
|
13
|
+
'ATOME',
|
|
14
|
+
'BUCKAROO_BANCONTACT',
|
|
15
|
+
'BUCKAROO_EPS',
|
|
16
|
+
'BUCKAROO_GIROPAY',
|
|
17
|
+
'BUCKAROO_IDEAL',
|
|
18
|
+
'BUCKAROO_SOFORT',
|
|
19
|
+
'GOCARDLESS',
|
|
20
|
+
'GOOGLE_PAY',
|
|
21
|
+
'HOOLAH',
|
|
22
|
+
'KLARNA',
|
|
23
|
+
'MOLLIE_BANCONTACT',
|
|
24
|
+
'MOLLIE_IDEAL',
|
|
25
|
+
'PAY_NL_BANCONTACT',
|
|
26
|
+
'PAY_NL_GIROPAY',
|
|
27
|
+
'PAY_NL_IDEAL',
|
|
28
|
+
'PAY_NL_PAYCONIQ',
|
|
29
|
+
'PAYMENT_CARD',
|
|
30
|
+
'PAYPAL',
|
|
31
|
+
'XFERS_PAYNOW',
|
|
8
32
|
] as const;
|
|
9
33
|
|
|
10
34
|
export type SinglePrimerPaymentMethod = typeof paymentMethods[number];
|
package/src/models/primer.ts
CHANGED
|
@@ -34,13 +34,6 @@ export interface IPrimer {
|
|
|
34
34
|
config: PrimerConfig
|
|
35
35
|
): void;
|
|
36
36
|
|
|
37
|
-
/**
|
|
38
|
-
* Prompt the SDK to fetch saved payment instruments from Primer's vault.
|
|
39
|
-
* Use the onSavedPaymentInstrumentsFetched callback in {@link PrimerConfig}
|
|
40
|
-
* to handle returned saved payment instruments.
|
|
41
|
-
*/
|
|
42
|
-
fetchSavedPaymentInstruments(token: String, config: PrimerConfig): void;
|
|
43
|
-
|
|
44
37
|
/**
|
|
45
38
|
* remove all listeners & callbacks.
|
|
46
39
|
*/
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|