QR Code Login Initial view state (#2667)

This commit is contained in:
Mauro
2024-04-09 12:21:14 +02:00
committed by GitHub
parent bc75fe1cf8
commit c61135f88c
27 changed files with 623 additions and 93 deletions
@@ -90,8 +90,7 @@ class AuthenticationFlowCoordinator: FlowCoordinatorProtocol {
case .loginManually:
Task { await self.startAuthentication() }
case .loginWithQR:
// TODO: Implement QR code login navigation
break
startQRCodeLogin()
case .reportProblem:
showReportProblemScreen()
}
@@ -103,6 +102,21 @@ class AuthenticationFlowCoordinator: FlowCoordinatorProtocol {
navigationRootCoordinator.setRootCoordinator(navigationStackCoordinator)
}
private func startQRCodeLogin() {
let coordinator = QRCodeLoginScreenCoordinator(parameters: .init(qrCodeLoginService: QRCodeLoginService()))
coordinator.actionsPublisher.sink { [weak self] action in
guard let self else {
return
}
switch action {
case .cancel:
navigationStackCoordinator.setSheetCoordinator(nil)
}
}
.store(in: &cancellables)
navigationStackCoordinator.setSheetCoordinator(coordinator)
}
private func showReportProblemScreen() {
bugReportFlowCoordinator = BugReportFlowCoordinator(parameters: .init(presentationMode: .sheet(navigationStackCoordinator),
userIndicatorController: userIndicatorController,