Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save bigMOTOR/4e7671eaa53723122f1eaa759a89cdac to your computer and use it in GitHub Desktop.
Save bigMOTOR/4e7671eaa53723122f1eaa759a89cdac to your computer and use it in GitHub Desktop.
2021-10-02_Article_ComposableContextsArchitecture_2.swift
extension ObserveUserNameUseCase where Self: UserRepositoryHolderType {
var userName: Observable<String> {
return userRepository.user
.compactMap { $0 }
.map { "\($0.firstName) \($0.lastName)" }
.distinctUntilChanged()
}
}
protocol UserRepositoryType {
var user: Observable<User?> { get }
}
protocol UserRepositoryHolderType {
var userRepository: UserRepositoryType { get }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment