This commit is contained in:
Михаил Капелько
2023-12-16 10:16:48 +03:00
parent 8cd6dac189
commit cd4c6fd80b
5 changed files with 64 additions and 20 deletions

View File

@@ -2,30 +2,38 @@ import Combine
import SwiftUI
final class VM: ObservableObject {
/*
@Published var text = ""
let changeText = PassthroughSubject<String, Never>()
@Published var t2 = "a:value"
var bt2: Binding<String>!
var subscriptions = Set<AnyCancellable>()
*/
@Published var t3 = "a:value"
var subscriptions = Set<AnyCancellable>()
init() {
$t3
//.debounce(for: .seconds(0.3), scheduler: DispatchQueue.main)
.debounce(for: .seconds(0.3), scheduler: DispatchQueue.main)
.sink { v in
/**/print("ИГР VM.init t3: '\(v)'")
// Ignore repoting application initiated strings
// Only report user initiated strings
//guard v.hasPrefix("u:") else { return }
//Bus.Service.singleton?.send(MeetupId.Keys.meetupIdTextUI.rawValue, String(v.dropFirst(2)))
guard v.hasPrefix("u:") else { return }
Bus.send(MeetupId.Keys.meetupIdTextUI.rawValue, String(v.dropFirst(2)))
}
.store(in: &subscriptions)
Bus.receiveAsync(
&subscriptions,
[MeetupId.Keys.meetupIdTextApp.rawValue],
{ [weak self] _, v in self?.applyFormattedValue(v) }
)
/*
bt2 = Binding<String>(
get: { [weak self] in
String(self?.t2.dropFirst(2) ?? "")
@@ -75,15 +83,12 @@ final class VM: ObservableObject {
self?.text = out
}
.store(in: &subscriptions)
*/
}
func handleAppValue(_: String, _ value: String) {
/**/print("ИГР VM.handleAV value: '\(value)'")
/*
DispatchQueue.main.async { [weak self] in
self?.t2 = value
}
*/
func applyFormattedValue(_ value: String) {
/**/print("ИГР VM.handleFV value: '\(value)'")
t3 = "a:\(value)"
}
}