field_ios

In-the-field app for Radroots on iOS
git clone https://radroots.dev/git/field_ios.git
Log | Files | Refs | README | LICENSE

TeraTodayStatusView.swift (1106B)


      1 import SwiftUI
      2 
      3 struct TeraTodayStatusView: View {
      4   let presentation: TeraTodayPresentation
      5 
      6   var body: some View {
      7     VStack(alignment: .leading, spacing: 8) {
      8       if presentation.refresh == .refreshing {
      9         ProgressView("Checking for updates…")
     10       }
     11       if presentation.isReading {
     12         ProgressView("Reading saved posts…")
     13       }
     14       if case let .failed(failure) = presentation.refresh {
     15         Label("Refresh failed. \(failure.message)", systemImage: failure.systemImage)
     16       }
     17       ForEach(Array(presentation.relayMessages.enumerated()), id: \.offset) { _, message in
     18         Text(message)
     19       }
     20       if let failure = presentation.readFailure {
     21         Label(failure.readStatus, systemImage: failure.systemImage)
     22       }
     23       if let message = presentation.freshnessMessage {
     24         Text(message)
     25       }
     26     }
     27     .font(.footnote)
     28     .foregroundStyle(.secondary)
     29     .accessibilityElement(children: .ignore)
     30     .accessibilityLabel("Today status")
     31     .accessibilityValue(presentation.accessibilityStatus)
     32     .accessibilityIdentifier("radroots.today.status")
     33   }
     34 }