// // CredentialsPresenter.swift // PrivadoVPN // // Created by Zhandos Bolatbekov on 13.10.2021. // Copyright © 2021 Privado LLC. All rights reserved. // import Foundation protocol CredentialsModuleOutput: AnyObject { func navigate(to route: Route) } final class CredentialsPresenter { private let output: CredentialsModuleOutput private let userSettings: UserSettings private let keychain: KeychainSwift init(output: CredentialsModuleOutput, userSettings: UserSettings, keychain: KeychainSwift) { self.output = output self.userSettings = userSettings self.keychain = keychain } } extension CredentialsPresenter: CredentialsControllerOutput { var email: String? { self.userSettings.newlyCreatedEmail } var username: String? { self.keychain.get(PrivadoConstants.Keychain.username) } var password: String? { self.keychain.get(PrivadoConstants.Keychain.passwd) } func didTapTutorial() { self.userSettings.newlyCreatedEmail = nil self.output.navigate(to: .servers) // Replace with tutorials when they are ready } func didTapSkip() { self.userSettings.newlyCreatedEmail = nil self.output.navigate(to: .servers) } }