LiveActivityIOBLabelView.swift 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //
  2. // LiveActivityWidgetItems.swift
  3. // LiveActivityExtension
  4. //
  5. // Created by Cengiz Deniz on 17.10.24.
  6. //
  7. import Foundation
  8. import SwiftUI
  9. import WidgetKit
  10. struct LiveActivityIOBLabelView: View {
  11. var context: ActivityViewContext<LiveActivityAttributes>
  12. var additionalState: LiveActivityAttributes.ContentAdditionalState
  13. private var bolusFormatter: NumberFormatter {
  14. let formatter = NumberFormatter()
  15. formatter.numberStyle = .decimal
  16. formatter.maximumFractionDigits = 1
  17. return formatter
  18. }
  19. var body: some View {
  20. VStack(spacing: 2) {
  21. HStack {
  22. Text(
  23. bolusFormatter.string(from: additionalState.iob as NSNumber) ?? "--"
  24. )
  25. .fontWeight(.bold)
  26. .font(.title3)
  27. .foregroundStyle(context.isStale ? .secondary : .primary)
  28. .strikethrough(context.isStale, pattern: .solid, color: .red.opacity(0.6))
  29. Text(String(localized: "U", comment: "Insulin unit"))
  30. .font(.headline).fontWeight(.bold)
  31. .foregroundStyle(context.isStale ? .secondary : .primary)
  32. .strikethrough(context.isStale, pattern: .solid, color: .red.opacity(0.6))
  33. }
  34. Text("IOB").font(.subheadline).foregroundStyle(.primary)
  35. }
  36. }
  37. }