28 lines
828 B
Swift
28 lines
828 B
Swift
//
|
|
// CheckboxGroup.swift
|
|
// VDS
|
|
//
|
|
// Created by Matt Bruce on 8/23/22.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public class CheckboxGroup: CheckboxGroupBase<DefaultCheckboxGroupModel, Checkbox> {}
|
|
|
|
public class CheckboxGroupBase<CheckboxGroupModelType: CheckboxGroupModel, CheckboxType: CheckboxBase<CheckboxGroupModelType.SelectorType>>: SelectorGroupBase<CheckboxGroupModelType.SelectorType, CheckboxGroupModelType, CheckboxType> {
|
|
|
|
public var hasError: Bool {
|
|
get { model.hasError }
|
|
set {
|
|
var newHasError = newValue
|
|
let selectors = model.selectors.compactMap { existing in
|
|
return existing.copyWith {
|
|
$0.hasError = newHasError
|
|
}
|
|
}
|
|
model.hasError = newHasError
|
|
model.selectors = selectors
|
|
}
|
|
}
|
|
}
|