refactored updateView stuff into method
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
843739e913
commit
1d30735948
@ -62,15 +62,7 @@ open class Control<ModelType: Modelable>: UIControl, ModelHandlerable, ViewProto
|
||||
public func initialSetup() {
|
||||
if !initialSetupPerformed {
|
||||
initialSetupPerformed = true
|
||||
//setup viewUpdate
|
||||
modelPublisher.filter { viewModel in
|
||||
return self.shouldUpdateView(viewModel: viewModel)
|
||||
|
||||
}.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self = self else { return }
|
||||
self.updateView(viewModel: viewModel)
|
||||
|
||||
}.store(in: &subscribers)
|
||||
setupUpdateView()
|
||||
setup()
|
||||
}
|
||||
}
|
||||
|
||||
@ -62,15 +62,7 @@ open class View<ModelType: Modelable>: UIView, ModelHandlerable, ViewProtocol, R
|
||||
public func initialSetup() {
|
||||
if !initialSetupPerformed {
|
||||
initialSetupPerformed = true
|
||||
//setup viewUpdate
|
||||
modelPublisher.filter { viewModel in
|
||||
return self.shouldUpdateView(viewModel: viewModel)
|
||||
|
||||
}.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self = self else { return }
|
||||
self.updateView(viewModel: viewModel)
|
||||
|
||||
}.store(in: &subscribers)
|
||||
setupUpdateView()
|
||||
setup()
|
||||
}
|
||||
}
|
||||
|
||||
@ -95,17 +95,7 @@ open class LabelBase<ModelType: LabelModel>: UILabel, ModelHandlerable, ViewProt
|
||||
translatesAutoresizingMaskIntoConstraints = false
|
||||
accessibilityCustomActions = []
|
||||
accessibilityTraits = .staticText
|
||||
|
||||
//setup viewUpdate
|
||||
modelPublisher.filter { viewModel in
|
||||
return self.shouldUpdateView(viewModel: viewModel)
|
||||
|
||||
}.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self = self else { return }
|
||||
self.updateView(viewModel: viewModel)
|
||||
|
||||
}.store(in: &subscribers)
|
||||
|
||||
setupUpdateView()
|
||||
setup()
|
||||
}
|
||||
|
||||
|
||||
@ -29,4 +29,16 @@ extension ModelHandlerable {
|
||||
self.model = model
|
||||
}
|
||||
}
|
||||
|
||||
public func setupUpdateView() {
|
||||
modelPublisher.filter { [weak self] viewModel in
|
||||
guard let self else { return false}
|
||||
return self.shouldUpdateView(viewModel: viewModel)
|
||||
|
||||
}.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] viewModel in
|
||||
guard let self else { return }
|
||||
self.updateView(viewModel: viewModel)
|
||||
|
||||
}.store(in: &subscribers)
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user