@primer-io/react-native 2.6.1 → 2.7.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 +1 -0
- package/android/src/main/java/com/primerioreactnative/PrimerRNEventListener.kt +24 -1
- package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckoutListener.kt +24 -1
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerCheckoutAdditionalInfoRN.kt +13 -0
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerCheckoutDataRN.kt +4 -1
- package/android/src/main/java/com/primerioreactnative/datamodels/PrimerEvents.kt +1 -0
- package/android/src/main/java/com/primerioreactnative/extensions/PrimerCheckoutAdditionalInfo.kt +12 -0
- package/android/src/main/java/com/primerioreactnative/extensions/PrimerCheckoutData.kt +1 -1
- package/android/src/main/java/com/primerioreactnative/utils/PrimerHeadlessUniversalCheckoutImplementedRNCallbacks.kt +2 -0
- package/android/src/main/java/com/primerioreactnative/utils/PrimerImplementedRNCallbacks.kt +2 -0
- package/ios/DataModels/ImplementedRNCallbacks.swift +6 -3
- package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +23 -1
- package/ios/RNTPrimer.swift +72 -49
- package/lib/commonjs/Primer.js +14 -3
- package/lib/commonjs/Primer.js.map +1 -1
- package/lib/commonjs/RNPrimer.js +1 -1
- package/lib/commonjs/RNPrimer.js.map +1 -1
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js +17 -6
- package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +1 -1
- package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckout.js +1 -1
- package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
- package/lib/commonjs/index.js +14 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js +2 -0
- package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js.map +1 -0
- package/lib/commonjs/models/PrimerCheckoutData.js +3 -0
- package/lib/commonjs/models/PrimerCheckoutData.js.map +1 -1
- package/lib/module/Primer.js +14 -3
- package/lib/module/Primer.js.map +1 -1
- package/lib/module/RNPrimer.js +1 -1
- package/lib/module/RNPrimer.js.map +1 -1
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js +17 -6
- package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +1 -1
- package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckout.js +1 -1
- package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/PrimerCheckoutAdditionalInfo.js +2 -0
- package/lib/module/models/PrimerCheckoutAdditionalInfo.js.map +1 -0
- package/lib/module/models/PrimerCheckoutData.js +2 -0
- package/lib/module/models/PrimerCheckoutData.js.map +1 -1
- package/lib/typescript/src/RNPrimer.d.ts +1 -1
- package/lib/typescript/src/headless_checkout/RNPrimerHeadlessUniversalCheckout.d.ts +1 -1
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/models/PrimerCheckoutAdditionalInfo.d.ts +10 -0
- package/lib/typescript/src/models/PrimerCheckoutData.d.ts +3 -1
- package/lib/typescript/src/models/PrimerSettings.d.ts +2 -0
- package/package.json +1 -1
- package/primer-io-react-native.podspec +1 -1
- package/src/Primer.ts +16 -0
- package/src/RNPrimer.ts +2 -0
- package/src/headless_checkout/PrimerHeadlessUniversalCheckout.ts +16 -0
- package/src/headless_checkout/RNPrimerHeadlessUniversalCheckout.ts +2 -0
- package/src/index.tsx +5 -1
- package/src/models/PrimerCheckoutAdditionalInfo.ts +11 -0
- package/src/models/PrimerCheckoutData.ts +5 -2
- package/src/models/PrimerSettings.ts +8 -6
package/src/RNPrimer.ts
CHANGED
|
@@ -14,6 +14,7 @@ type EventType =
|
|
|
14
14
|
| 'onDismiss'
|
|
15
15
|
| 'onTokenizeSuccess'
|
|
16
16
|
| 'onResumeSuccess'
|
|
17
|
+
| 'onResumePending'
|
|
17
18
|
| 'detectImplementedRNCallbacks';
|
|
18
19
|
|
|
19
20
|
export interface IPrimerError {
|
|
@@ -31,6 +32,7 @@ const eventTypes: EventType[] = [
|
|
|
31
32
|
'onDismiss',
|
|
32
33
|
'onTokenizeSuccess',
|
|
33
34
|
'onResumeSuccess',
|
|
35
|
+
'onResumePending',
|
|
34
36
|
'detectImplementedRNCallbacks'
|
|
35
37
|
];
|
|
36
38
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import RNPrimerHeadlessUniversalCheckout from './RNPrimerHeadlessUniversalCheckout';
|
|
2
2
|
import type { PrimerCheckoutData } from '../models/PrimerCheckoutData';
|
|
3
|
+
import type { PrimerCheckoutAdditionalInfo } from '../models/PrimerCheckoutAdditionalInfo';
|
|
3
4
|
import type { PrimerCheckoutPaymentMethodData } from '../models/PrimerCheckoutPaymentMethodData';
|
|
4
5
|
import type { PrimerTokenizationHandler, PrimerResumeHandler, PrimerPaymentCreationHandler } from '../models/PrimerInterfaces';
|
|
5
6
|
import type { PrimerHeadlessUniversalCheckoutStartResponse } from './types';
|
|
@@ -102,6 +103,7 @@ async function configureListeners(): Promise<void> {
|
|
|
102
103
|
onClientSessionUpdate: (primerSettings?.onClientSessionUpdate !== undefined),
|
|
103
104
|
onTokenizeSuccess: (primerSettings?.onTokenizeSuccess !== undefined),
|
|
104
105
|
onResumeSuccess: (primerSettings?.onResumeSuccess !== undefined),
|
|
106
|
+
onResumePending: (primerSettings?.onResumePending !== undefined),
|
|
105
107
|
onDismiss: false,
|
|
106
108
|
onError: (primerSettings?.onError !== undefined),
|
|
107
109
|
onHUCAvailablePaymentMethodsLoaded: (primerSettings?.onAvailablePaymentMethodsLoad !== undefined),
|
|
@@ -127,6 +129,20 @@ async function configureListeners(): Promise<void> {
|
|
|
127
129
|
);
|
|
128
130
|
}
|
|
129
131
|
|
|
132
|
+
if (implementedRNCallbacks.onResumePending) {
|
|
133
|
+
RNPrimerHeadlessUniversalCheckout.addListener(
|
|
134
|
+
'onResumePending',
|
|
135
|
+
(additionalInfo) => {
|
|
136
|
+
if (primerSettings && primerSettings.onResumePending) {
|
|
137
|
+
const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = additionalInfo;
|
|
138
|
+
primerSettings.onResumePending(checkoutAdditionalInfo);
|
|
139
|
+
} else {
|
|
140
|
+
// Ignore!
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
|
|
130
146
|
if (implementedRNCallbacks.onHUCPrepareStart) {
|
|
131
147
|
RNPrimerHeadlessUniversalCheckout.addListener(
|
|
132
148
|
'onHUCPrepareStart',
|
|
@@ -11,6 +11,7 @@ type EventType =
|
|
|
11
11
|
| 'onHUCPaymentMethodShow'
|
|
12
12
|
| 'onTokenizeSuccess'
|
|
13
13
|
| 'onResumeSuccess'
|
|
14
|
+
| 'onResumePending'
|
|
14
15
|
| 'onBeforePaymentCreate'
|
|
15
16
|
| 'onBeforeClientSessionUpdate'
|
|
16
17
|
| 'onClientSessionUpdate'
|
|
@@ -24,6 +25,7 @@ const eventTypes: EventType[] = [
|
|
|
24
25
|
'onHUCPaymentMethodShow',
|
|
25
26
|
'onTokenizeSuccess',
|
|
26
27
|
'onResumeSuccess',
|
|
28
|
+
'onResumePending',
|
|
27
29
|
'onBeforePaymentCreate',
|
|
28
30
|
'onBeforeClientSessionUpdate',
|
|
29
31
|
'onClientSessionUpdate',
|
package/src/index.tsx
CHANGED
|
@@ -25,7 +25,11 @@ export {
|
|
|
25
25
|
PrimerRawData,
|
|
26
26
|
PrimerRawCardData
|
|
27
27
|
} from './models/PrimerRawData';
|
|
28
|
-
export {
|
|
28
|
+
export {
|
|
29
|
+
PrimerCheckoutAdditionalInfo,
|
|
30
|
+
MultibancoCheckoutAdditionalInfo
|
|
31
|
+
} from './models/PrimerCheckoutAdditionalInfo';
|
|
32
|
+
export {
|
|
29
33
|
PrimerCheckoutData,
|
|
30
34
|
PrimerCheckoutDataPayment,
|
|
31
35
|
} from './models/PrimerCheckoutData';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type PrimerCheckoutAdditionalInfo = IPrimerCheckoutAdditionalInfo;
|
|
2
|
+
|
|
3
|
+
interface IPrimerCheckoutAdditionalInfo {}
|
|
4
|
+
|
|
5
|
+
export type MultibancoCheckoutAdditionalInfo = IMultibancoCheckoutAdditionalInfo;
|
|
6
|
+
|
|
7
|
+
interface IMultibancoCheckoutAdditionalInfo extends IPrimerCheckoutAdditionalInfo {
|
|
8
|
+
expiresAt?: string;
|
|
9
|
+
entity?: string;
|
|
10
|
+
reference?: string;
|
|
11
|
+
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import type { PrimerCheckoutAdditionalInfo } from "./PrimerCheckoutAdditionalInfo";
|
|
2
|
+
|
|
1
3
|
export type PrimerCheckoutData = IPrimerCheckoutData;
|
|
2
4
|
|
|
3
5
|
interface IPrimerCheckoutData {
|
|
4
|
-
payment
|
|
6
|
+
payment?: IPrimerCheckoutDataPayment;
|
|
7
|
+
additionalInfo?: PrimerCheckoutAdditionalInfo
|
|
5
8
|
}
|
|
6
9
|
|
|
7
10
|
export type PrimerCheckoutDataPayment = IPrimerCheckoutDataPayment;
|
|
@@ -15,4 +18,4 @@ interface IPrimerCheckoutDataPayment {
|
|
|
15
18
|
enum PrimerPaymentErrorCode {
|
|
16
19
|
FAILED = 'payment-failed',
|
|
17
20
|
CANCELLED_BY_CUSTOMER = 'cancelled-by-customer',
|
|
18
|
-
}
|
|
21
|
+
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
PrimerErrorHandler,
|
|
3
|
-
PrimerPaymentCreationHandler,
|
|
4
|
-
PrimerResumeHandler,
|
|
5
|
-
PrimerTokenizationHandler
|
|
1
|
+
import type {
|
|
2
|
+
PrimerErrorHandler,
|
|
3
|
+
PrimerPaymentCreationHandler,
|
|
4
|
+
PrimerResumeHandler,
|
|
5
|
+
PrimerTokenizationHandler
|
|
6
6
|
} from "./PrimerInterfaces";
|
|
7
7
|
import type { PrimerCheckoutData } from "./PrimerCheckoutData";
|
|
8
|
+
import type { PrimerCheckoutAdditionalInfo } from "./PrimerCheckoutAdditionalInfo";
|
|
8
9
|
import type { PrimerCheckoutPaymentMethodData } from "./PrimerCheckoutPaymentMethodData";
|
|
9
10
|
import type { PrimerClientSession } from "./PrimerClientSession";
|
|
10
11
|
import type { PrimerPaymentMethodTokenData } from "./PrimerPaymentMethodTokenData";
|
|
@@ -27,9 +28,10 @@ interface IPrimerSettings {
|
|
|
27
28
|
onCheckoutComplete?: (checkoutData: PrimerCheckoutData) => void;
|
|
28
29
|
onTokenizeSuccess?: (paymentMethodTokenData: PrimerPaymentMethodTokenData, handler: PrimerTokenizationHandler) => void;
|
|
29
30
|
onResumeSuccess?: (resumeToken: string, handler: PrimerResumeHandler) => void;
|
|
31
|
+
onResumePending?: (additionalInfo: PrimerCheckoutAdditionalInfo) => void;
|
|
30
32
|
// PrimerErrorHandler will be undefined on the HUC flow.
|
|
31
33
|
onError?: (error: PrimerError, checkoutData: PrimerCheckoutData | null, handler: PrimerErrorHandler | undefined) => void;
|
|
32
|
-
|
|
34
|
+
|
|
33
35
|
// Only on main SDK
|
|
34
36
|
onDismiss?: () => void;
|
|
35
37
|
|