@@ -7,6 +7,8 @@ import androidx.compose.runtime.saveable.rememberSaveable
7
7
import androidx.lifecycle.compose.LocalLifecycleOwner
8
8
import androidx.lifecycle.viewmodel.compose.LocalViewModelStoreOwner
9
9
import com.stripe.android.common.ui.UpdateCallbacks
10
+ import com.stripe.android.paymentelement.CustomPaymentMethodConfirmHandler
11
+ import com.stripe.android.paymentelement.ExperimentalCustomPaymentMethodsApi
10
12
import com.stripe.android.paymentelement.callbacks.PaymentElementCallbacks
11
13
import com.stripe.android.paymentsheet.flowcontroller.FlowControllerFactory
12
14
import com.stripe.android.utils.rememberActivity
@@ -25,9 +27,11 @@ fun rememberPaymentSheetFlowController(
25
27
paymentOptionCallback : PaymentOptionCallback ,
26
28
paymentResultCallback : PaymentSheetResultCallback ,
27
29
): PaymentSheet .FlowController {
30
+ @OptIn(ExperimentalCustomPaymentMethodsApi ::class )
28
31
return internalRememberPaymentSheetFlowController(
29
32
paymentOptionCallback = paymentOptionCallback,
30
33
paymentResultCallback = paymentResultCallback,
34
+ customPaymentMethodConfirmHandler = null ,
31
35
createIntentCallback = null ,
32
36
externalPaymentMethodConfirmHandler = null ,
33
37
)
@@ -50,9 +54,11 @@ fun rememberPaymentSheetFlowController(
50
54
paymentOptionCallback : PaymentOptionCallback ,
51
55
paymentResultCallback : PaymentSheetResultCallback ,
52
56
): PaymentSheet .FlowController {
57
+ @OptIn(ExperimentalCustomPaymentMethodsApi ::class )
53
58
return internalRememberPaymentSheetFlowController(
54
59
paymentOptionCallback = paymentOptionCallback,
55
60
paymentResultCallback = paymentResultCallback,
61
+ customPaymentMethodConfirmHandler = null ,
56
62
createIntentCallback = createIntentCallback,
57
63
externalPaymentMethodConfirmHandler = null ,
58
64
)
@@ -79,9 +85,11 @@ fun rememberPaymentSheetFlowController(
79
85
paymentOptionCallback : PaymentOptionCallback ,
80
86
paymentResultCallback : PaymentSheetResultCallback ,
81
87
): PaymentSheet .FlowController {
88
+ @OptIn(ExperimentalCustomPaymentMethodsApi ::class )
82
89
return internalRememberPaymentSheetFlowController(
83
90
paymentOptionCallback = paymentOptionCallback,
84
91
paymentResultCallback = paymentResultCallback,
92
+ customPaymentMethodConfirmHandler = null ,
85
93
createIntentCallback = createIntentCallback,
86
94
externalPaymentMethodConfirmHandler = externalPaymentMethodConfirmHandler
87
95
)
@@ -139,10 +147,12 @@ private fun internalRememberPaymentSheetFlowController(
139
147
}
140
148
}
141
149
150
+ @OptIn(ExperimentalCustomPaymentMethodsApi ::class )
142
151
@Composable
143
152
internal fun internalRememberPaymentSheetFlowController (
144
153
createIntentCallback : CreateIntentCallback ? ,
145
154
externalPaymentMethodConfirmHandler : ExternalPaymentMethodConfirmHandler ? ,
155
+ customPaymentMethodConfirmHandler : CustomPaymentMethodConfirmHandler ? ,
146
156
paymentOptionCallback : PaymentOptionCallback ,
147
157
paymentResultCallback : PaymentSheetResultCallback ,
148
158
): PaymentSheet .FlowController {
@@ -153,6 +163,7 @@ internal fun internalRememberPaymentSheetFlowController(
153
163
val callbacks = remember(createIntentCallback, externalPaymentMethodConfirmHandler) {
154
164
PaymentElementCallbacks (
155
165
createIntentCallback = createIntentCallback,
166
+ customPaymentMethodConfirmHandler = customPaymentMethodConfirmHandler,
156
167
externalPaymentMethodConfirmHandler = externalPaymentMethodConfirmHandler,
157
168
)
158
169
}
0 commit comments