From f3b9999e342198b5ddd3a787f15b5db1ba24555d Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Mon, 15 Aug 2022 12:11:23 -0500 Subject: [PATCH] updates Signed-off-by: Matt Bruce --- VDS/Components/Label/Label.swift | 2 +- .../Selector/SelectorGroupBase.swift | 20 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/VDS/Components/Label/Label.swift b/VDS/Components/Label/Label.swift index 078b5d3e..9114d41a 100644 --- a/VDS/Components/Label/Label.swift +++ b/VDS/Components/Label/Label.swift @@ -135,7 +135,7 @@ open class LabelBase: UILabel, ModelHandlerable, ViewProt font = FontStyle.defaultStyle.font } - if let attributes = viewModel.attributes, let text = model.text, let font = font, let textColor = textColor { + if let attributes = viewModel.attributes, let text = viewModel.text, let font = font, let textColor = textColor { //clear the arrays holding actions accessibilityCustomActions = [] actions = [] diff --git a/VDS/Components/Selector/SelectorGroupBase.swift b/VDS/Components/Selector/SelectorGroupBase.swift index 6836944b..0e3d0c1c 100644 --- a/VDS/Components/Selector/SelectorGroupBase.swift +++ b/VDS/Components/Selector/SelectorGroupBase.swift @@ -87,17 +87,21 @@ open class SelectorGroupBase 0 else { return } - self?.didSelect(selector: model) - }.store(in: &subscribers) + newSelectorView.selectedPublisher() + .sink { [weak self] model in + guard self?.model.selectors.count ?? 0 > 0 else { return } + self?.didSelect(selector: model) + } + .store(in: &subscribers) //add model update to the subscribers - newSelectorView.modelPublisher.debounce(for: .seconds(Constants.ModelStateDebounce), scheduler: RunLoop.main).sink { [weak self] model in - if let cached = self?.getCachedSelector(viewModel: model), newSelectorView.shouldUpdateView(viewModel: cached) { - self?.replace(viewModel: model) + newSelectorView.handlerPublisher() + .sink { [weak self] model in + if let cached = self?.getCachedSelector(viewModel: model), newSelectorView.shouldUpdateView(viewModel: cached) { + self?.replace(viewModel: model) + } } - }.store(in: &subscribers) + .store(in: &subscribers) self.selectorViews.append(newSelectorView) mainStackView.addArrangedSubview(newSelectorView)