NightscoutConfigRootView.swift 1.1 KB

12345678910111213141516171819202122232425262728
  1. import SwiftUI
  2. extension NightscoutConfig {
  3. struct RootView: BaseView {
  4. @EnvironmentObject var viewModel: ViewModel<Provider>
  5. var body: some View {
  6. Form {
  7. TextField("URL", text: $viewModel.url)
  8. .disableAutocorrection(true)
  9. .textContentType(.URL)
  10. .autocapitalization(.none)
  11. .keyboardType(.URL)
  12. SecureField("API secret", text: $viewModel.secret)
  13. .disableAutocorrection(true)
  14. .autocapitalization(.none)
  15. .textContentType(.password)
  16. .keyboardType(.asciiCapable)
  17. Button("Connect") { viewModel.connect() }.disabled(viewModel.url.isEmpty || viewModel.secret.isEmpty)
  18. Button("Delete") { viewModel.delete() }.foregroundColor(.red)
  19. }
  20. .toolbar { ToolbarItem(placement: .principal) { Text("Nightscout Config") } }
  21. .navigationBarItems(leading: Button("Close", action: viewModel.hideModal))
  22. .navigationBarTitleDisplayMode(.inline)
  23. }
  24. }
  25. }