refactored hasError

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2022-09-14 11:54:10 -05:00
parent 2e6bb6fbab
commit 9b22fb4e2f
2 changed files with 11 additions and 11 deletions

View File

@ -28,13 +28,16 @@ public class CheckboxGroupBase<GroupModelType: CheckboxGroupModel, ModelHandlerT
public var hasError: Bool {
get { model.hasError }
set {
let selectors = model.selectors.compactMap { existing in
return existing.copyWith {
$0.hasError = newValue
}
var newHasError = newValue
let anySelected = selectorViews.filter { $0.isSelected == true }.count > 0
if anySelected && newHasError {
newHasError = false
}
model.hasError = newValue
model.selectors = selectors
selectorViews.forEach { handler in
handler.hasError = newHasError
}
model.hasError = newHasError
}
}

View File

@ -35,13 +35,10 @@ public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHa
if selectedModel != nil, newHasError {
newHasError = false
}
let selectors = model.selectors.compactMap { existing in
return existing.copyWith {
$0.hasError = newHasError
}
selectorViews.forEach { handler in
handler.hasError = newHasError
}
model.hasError = newHasError
model.selectors = selectors
}
}