import Combine import Foundation import Swinject protocol Provider { init(resolver: Resolver) var user: CurrentValueSubject { get } } class BaseProvider: Provider, Injectable { let user = CurrentValueSubject(nil) var lifetime = Set() required init(resolver: Resolver) { injectServices(resolver) makeTestUser() } } extension BaseProvider { func makeTestUser() { let user = User( id: UUID(), name: "Vasiliy", email: "example@mail.ru" ) self.user.send(user) } }