Проверка шаблона шины для iOS
25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

38 satır
714B

  1. import Combine
  2. import SwiftUI
  3. extension BusUI {
  4. public final class TextField: ObservableObject {
  5. @Published public var v = "a:"
  6. var subscriptions = [AnyCancellable]()
  7. public init(
  8. _ textApp: String,
  9. _ textUI: String,
  10. _ id: String? = nil
  11. ) {
  12. var ka = textApp
  13. var ku = textUI
  14. if let id {
  15. ka = ka + id
  16. ku = ku + id
  17. }
  18. Bus.sendSync(
  19. ku,
  20. $v
  21. .removeDuplicates()
  22. .compactMap(onlyUIText)
  23. .eraseToAnyPublisher(),
  24. &subscriptions
  25. )
  26. Bus.receiveSync(
  27. [ka],
  28. { [weak self] (_, v: String) in self?.v = "a:\(v)" },
  29. &subscriptions
  30. )
  31. }
  32. }
  33. }