Skip to content

Commit d4eca92

Browse files
committed
Hook payments onboarding container and payment alert in settings
1 parent 79e3a0d commit d4eca92

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

Modules/Sources/PointOfSale/Presentation/Settings/POSSettingsHardwareDetailView.swift

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ struct POSSettingsHardwareDetailView: View {
3636
}
3737

3838
var body: some View {
39+
@Bindable var posModel = posModel
3940
NavigationStack(path: $navigationPath) {
4041
POSPageHeaderView(title: Localization.hardwareTitle)
4142
.foregroundColor(.posSurface)
@@ -81,6 +82,17 @@ struct POSSettingsHardwareDetailView: View {
8182
scannersView
8283
}
8384
}
85+
.posModal(item: $posModel.cardPresentPaymentOnboardingViewContainer, onDismiss: {
86+
// TODO: Dismissal
87+
}, content: { onboardingViewContainer in
88+
paymentsOnboardingView(onboardingViewContainer)
89+
})
90+
.posModal(item: $posModel.cardPresentPaymentAlertViewModel, onDismiss: {
91+
// TODO: Dismissal
92+
}, content: { alertType in
93+
PointOfSaleCardPresentPaymentAlert(alertType: alertType)
94+
.posInteractiveDismissDisabled(alertType.isDismissDisabled)
95+
})
8496
.posModal(isPresented: $showBarcodeScanningSetupModal) {
8597
POSBarcodeScannerSetup(isPresented: $showBarcodeScanningSetupModal, analytics: analytics)
8698
}
@@ -261,6 +273,21 @@ private extension POSSettingsHardwareDetailView {
261273
}
262274
}
263275

276+
// MARK: - Reader connection
277+
private extension POSSettingsHardwareDetailView {
278+
func paymentsOnboardingView(_ onboardingViewContainer: CardPresentPaymentOnboardingViewContainer) -> some View {
279+
let viewModel = PointOfSaleCardPresentPaymentOnboardingViewModel(onboardingViewContainer: onboardingViewContainer, onDismissTap: {
280+
// TODO: Handle dismissal
281+
})
282+
return PointOfSaleCardPresentPaymentOnboardingView(viewModel: viewModel)
283+
.onAppear {
284+
// TODO: Do we need to distinguish here for tracking?
285+
// posModel.trackCardPaymentsOnboardingShown()
286+
}
287+
}
288+
}
289+
290+
264291
// MARK: - Navigation
265292
private extension POSSettingsHardwareDetailView {
266293
enum HardwareDestination: Identifiable, CaseIterable {

0 commit comments

Comments
 (0)