Files
check-ios-bus/Modules/BusX/BusUI/src/BusUI.TextField.swift
Михаил Капелько 1f501d8276 d
2024-01-08 10:14:18 +03:00

30 rivejä
582 B
Swift

import Combine
import SwiftUI
extension BusUI {
public final class TextField: ObservableObject {
@Published public var v = "a:"
var subscriptions = [AnyCancellable]()
public init(
_ textApp: String,
_ textUI: String
) {
Bus.sendSync(
textUI,
$v
.removeDuplicates()
.compactMap(onlyUIText)
.eraseToAnyPublisher(),
&subscriptions
)
Bus.receiveSync(
[textApp],
{ [weak self] (_, v: String) in self?.v = "a:\(v)" },
&subscriptions
)
}
}
}