ensure viewModel?. is used outside of the viewModelDidUpdate method

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2024-08-12 08:28:44 -05:00
parent f96b750302
commit 81df3b51b4
8 changed files with 18 additions and 18 deletions

View File

@ -110,7 +110,7 @@ open class ItemDropdownEntryField: VDS.DropdownSelect, VDSMoleculeViewProtocol,
publisher(for: .valueChanged)
.sink { [weak self] control in
guard let self, let selectedItem else { return }
guard let self, let selectedItem, let viewModel else { return }
viewModel.selectedIndex = control.selectId
observeDropdownSelection?(selectedItem.text)
_ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate)
@ -130,7 +130,7 @@ open class ItemDropdownEntryField: VDS.DropdownSelect, VDSMoleculeViewProtocol,
guard let self else { return }
isEditting = false
_ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate)
if let valid = viewModel.isValid {
if let viewModel, let valid = viewModel.isValid {
updateValidation(valid)
}
performDropdownAction()
@ -207,7 +207,7 @@ open class ItemDropdownEntryField: VDS.DropdownSelect, VDSMoleculeViewProtocol,
if setInitialValueInTextField {
let pickerIndex = optionsPicker.selectedRow(inComponent: 0)
viewModel.selectedIndex = pickerIndex
viewModel?.selectedIndex = pickerIndex
selectId = pickerIndex
}
}

View File

@ -33,7 +33,7 @@ import VDS
private var isEditting: Bool = false {
didSet {
viewModel.selected = isEditting
viewModel?.selected = isEditting
}
}
@ -47,7 +47,7 @@ import VDS
open var validateWhenDoneEditing: Bool = true
open var shouldMaskWhileRecording: Bool {
return viewModel.shouldMaskRecordedView ?? false
return viewModel?.shouldMaskRecordedView ?? false
}
//--------------------------------------------------
// MARK: - Computed Properties
@ -99,7 +99,7 @@ import VDS
publisher(for: .valueChanged)
.sink { [weak self] control in
guard let self else { return }
guard let self, let viewModel else { return }
_ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate)
if (viewModel.type == .email) {
// remove spaces (either user entered Or auto-correct suggestion) for the email field
@ -112,7 +112,7 @@ import VDS
.sink { [weak self] textView in
guard let self else { return }
isEditting = true
if viewModel.clearTextOnTap {
if let viewModel, viewModel.clearTextOnTap {
text = ""
}
}.store(in: &subscribers)
@ -122,7 +122,7 @@ import VDS
.sink { [weak self] textView in
guard let self else { return }
isEditting = false
if validateWhenDoneEditing, let valid = viewModel.isValid {
if let viewModel, validateWhenDoneEditing, let valid = viewModel.isValid {
updateValidation(valid)
}
regexTextFieldOutputIfAvailable()

View File

@ -29,7 +29,7 @@ open class TextViewEntryField: VDS.TextArea, VDSMoleculeViewProtocol, ObservingT
private var isEditting: Bool = false {
didSet {
viewModel.selected = isEditting
viewModel?.selected = isEditting
}
}
@ -37,7 +37,7 @@ open class TextViewEntryField: VDS.TextArea, VDSMoleculeViewProtocol, ObservingT
// MARK: - Computed Properties
//--------------------------------------------------
open var shouldMaskWhileRecording: Bool {
return viewModel.shouldMaskRecordedView ?? false
return viewModel?.shouldMaskRecordedView ?? false
}
/// Placeholder access for the textView.
@ -91,7 +91,7 @@ open class TextViewEntryField: VDS.TextArea, VDSMoleculeViewProtocol, ObservingT
publisher(for: .valueChanged)
.sink { [weak self] control in
guard let self else { return }
guard let self, let viewModel else { return }
_ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate)
}.store(in: &subscribers)
@ -108,7 +108,7 @@ open class TextViewEntryField: VDS.TextArea, VDSMoleculeViewProtocol, ObservingT
.sink { [weak self] textView in
guard let self else { return }
isEditting = false
if let valid = viewModel.isValid {
if let viewModel, let valid = viewModel.isValid {
updateValidation(valid)
}

View File

@ -142,7 +142,7 @@ import VDS
viewModel.updateUI = {
MVMCoreDispatchUtility.performBlock(onMainThread: { [weak self] in
guard let self = self else { return }
let isValid = viewModel.isValid ?? true
//let isValid = viewModel.isValid ?? true
//TODO: Fix issue with default state
//showError = !isValid
isEnabled = viewModel.enabled

View File

@ -74,7 +74,7 @@ import VDS
viewModel.checkbox.updateUI = {
MVMCoreDispatchUtility.performBlock(onMainThread: { [weak self] in
guard let self = self else { return }
let isValid = viewModel.checkbox.isValid ?? true
//let isValid = viewModel.checkbox.isValid ?? true
//TODO: Fix issue with default state
//showError = !isValid
errorText = viewModel.checkbox.errorMessage

View File

@ -16,7 +16,7 @@ public class FormLabel: Label {
//public properties
public override var isEnabled: Bool {
didSet{
self.formModel.enabled = isEnabled
self.formModel?.enabled = isEnabled
self.set(with: isRequired ? formModel.model : formModel.requiredModel, delegateObject, additionalData)
}
}

View File

@ -66,7 +66,7 @@ import VDS
}
open func setStyle(_ style: LineModel.Style) {
viewModel.type = style
viewModel?.type = style
update(viewModel: viewModel)
}
@ -85,7 +85,7 @@ import VDS
}
open override func draw(_ rect: CGRect) {
guard viewModel.type != .none else { return }
guard let viewModel, viewModel.type != .none else { return }
super.draw(rect)
}

View File

@ -30,7 +30,7 @@ import VDS
if let delegate {
onTabDidSelect = { [weak self] index in
guard let self else { return }
viewModel.selectedIndex = index
viewModel?.selectedIndex = index
delegate.didSelectItem(.init(row: index, section: 0), tabs: self)
}