Михаил Капелько 1年前
コミット
5d5aa3d989
3個のファイルの変更27行の追加3行の削除
  1. +15
    -1
      Modules/BusX/src/Bus.Aux.swift
  2. +4
    -0
      Modules/BusX/src/Bus.swift
  3. +8
    -2
      Modules/MeetupIdX/src/MeetupId.Generated.swift

+ 15
- 1
Modules/BusX/src/Bus.Aux.swift ファイルの表示

@@ -1,4 +1,18 @@
extension Bus {
public extension Bus {
/// Пропускаем далее предоставленный ключ.
static func convertKeyValue<T>(
_ key: String,
_ v: (key: String, value: Any)
) -> (String, T)? {
guard
key == v.key,
let value = v.value as? T
else {
return nil
}
return (key, value)
}

/// Пропускаем далее предоставленные ключи.
static func convertKeyValue<T>(
_ keys: Set<String>,


+ 4
- 0
Modules/BusX/src/Bus.swift ファイルの表示

@@ -7,6 +7,10 @@ public extension Bus {
enum Option {
case async
}

static var events: AnyPublisher<(key: String, value: Any), Never> {
Service.singleton.events.eraseToAnyPublisher()
}
}

extension Bus {


+ 8
- 2
Modules/MeetupIdX/src/MeetupId.Generated.swift ファイルの表示

@@ -87,7 +87,10 @@ extension MeetupId {
ctrl.pipeValue(
dbg: "textA",
sub: nil,
K.meetupIdTextApp.eraseToAnyPublisher(),
Bus.events
.compactMap { Bus.convertKeyValue(K.meetupIdTextApp.rawValue, $0) }
.map { (k: String, v: String) -> String in v }
.eraseToAnyPublisher(),
{
$0.textApp.value = $1
$0.textApp.isRecent = true
@@ -100,7 +103,10 @@ extension MeetupId {
ctrl.pipeValue(
dbg: "textUI",
sub: nil,
K.meetupIdTextUI.eraseToAnyPublisher(),
Bus.events
.compactMap { Bus.convertKeyValue(K.meetupIdTextUI.rawValue, $0) }
.map { (k: String, v: String) -> String in v }
.eraseToAnyPublisher(),
{
$0.textUI.value = $1
$0.textUI.isRecent = true


読み込み中…
キャンセル
保存