Проверка шаблона шины для iOS

30 line
625B

  1. import BusX
  2. import SwiftUI
  3. extension MicItem {
  4. public struct V: View {
  5. var id: String?
  6. @StateObject var isActive = BusUI.Value(Mic.K.isActive, false)
  7. public init(_ id: String? = nil) {
  8. self.id = id
  9. }
  10. public var body: some View {
  11. Text("Mic activity")
  12. .padding(8)
  13. .border(
  14. isActive.v ? Color.black : Color.gray,
  15. width: isActive.v ? 3 : 1
  16. )
  17. .animation(.easeInOut(duration: 0.3))
  18. .onAppear {
  19. isActive.id = id
  20. }
  21. .onChange(of: id) { newValue in
  22. isActive.id = newValue
  23. }
  24. }
  25. }
  26. }