HKQuantityInputView.swift 921 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. // LoopFollow
  2. // HKQuantityInputView.swift
  3. // Created by Jonas Björkert.
  4. import Foundation
  5. import HealthKit
  6. import SwiftUI
  7. struct HKQuantityInputView: View {
  8. var label: String
  9. @Binding var quantity: HKQuantity
  10. var unit: HKUnit
  11. var maxLength: Int
  12. var minValue: HKQuantity
  13. var maxValue: HKQuantity
  14. @FocusState.Binding var isFocused: Bool
  15. var onValidationError: (String) -> Void
  16. var body: some View {
  17. HStack {
  18. Text(label)
  19. Spacer()
  20. TextFieldWithToolBar(
  21. quantity: $quantity,
  22. maxLength: maxLength,
  23. unit: unit,
  24. minValue: minValue,
  25. maxValue: maxValue,
  26. onValidationError: onValidationError
  27. )
  28. .focused($isFocused)
  29. Text(unit.localizedShortUnitString)
  30. .foregroundColor(.secondary)
  31. }
  32. }
  33. }