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() {
|
public func initialSetup() {
|
||||||
if !initialSetupPerformed {
|
if !initialSetupPerformed {
|
||||||
initialSetupPerformed = true
|
initialSetupPerformed = true
|
||||||
//setup viewUpdate
|
setupUpdateView()
|
||||||
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)
|
|
||||||
setup()
|
setup()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -62,15 +62,7 @@ open class View<ModelType: Modelable>: UIView, ModelHandlerable, ViewProtocol, R
|
|||||||
public func initialSetup() {
|
public func initialSetup() {
|
||||||
if !initialSetupPerformed {
|
if !initialSetupPerformed {
|
||||||
initialSetupPerformed = true
|
initialSetupPerformed = true
|
||||||
//setup viewUpdate
|
setupUpdateView()
|
||||||
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)
|
|
||||||
setup()
|
setup()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -95,17 +95,7 @@ open class LabelBase<ModelType: LabelModel>: UILabel, ModelHandlerable, ViewProt
|
|||||||
translatesAutoresizingMaskIntoConstraints = false
|
translatesAutoresizingMaskIntoConstraints = false
|
||||||
accessibilityCustomActions = []
|
accessibilityCustomActions = []
|
||||||
accessibilityTraits = .staticText
|
accessibilityTraits = .staticText
|
||||||
|
setupUpdateView()
|
||||||
//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)
|
|
||||||
|
|
||||||
setup()
|
setup()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -29,4 +29,16 @@ extension ModelHandlerable {
|
|||||||
self.model = model
|
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