LoginView.swift 1014 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. //
  2. // LoginView.swift
  3. // Chat
  4. //
  5. // Created by Sergey Tarasov on 25.07.2022.
  6. //
  7. import SwiftUI
  8. struct LoginView: View {
  9. @ObservedObject var viewModel: LoginViewModel
  10. @Binding var authStatus: Bool
  11. var body: some View {
  12. VStack(alignment: .center, spacing: 16) {
  13. TextField("Login", text: $viewModel.login)
  14. .textFieldStyle(.roundedBorder)
  15. SecureField("Password", text: $viewModel.password)
  16. .textFieldStyle(.roundedBorder)
  17. Button {
  18. viewModel.didTouchLogIn { success in
  19. if success {
  20. authStatus = true
  21. }
  22. }
  23. } label: {
  24. Text("Login")
  25. }
  26. }
  27. .padding()
  28. }
  29. }
  30. struct LoginView_Previews: PreviewProvider {
  31. static var viewModel: LoginViewModel = LoginViewModel()
  32. static var previews: some View {
  33. LoginView(viewModel: viewModel, authStatus: .constant(false))
  34. }
  35. }