rules should be optional

This commit is contained in:
Suresh, Kamlesh 2020-03-10 15:42:44 -04:00
parent 7965c4ac6a
commit c55a9f3faa
2 changed files with 9 additions and 4 deletions

View File

@ -13,13 +13,13 @@ import MVMCore
static var defaultGroupName: String = "default"
var extraValidationBlock: (() -> Bool)?
var formRules: [FormGroupRule]
var formRules: [FormGroupRule]?
var delegate: FormHolderProtocol?
var fieldMolecules: [String: FormFieldProtocol] = [:]
var formActionMolecules: [FormActionFieldProtocol] = []
var radioButtonsModelByGroup: [String: RadioButtonSelectionHelper] = [:]
public init(_ formRules: [FormGroupRule]) {
public init(_ formRules: [FormGroupRule]?) {
self.formRules = formRules
}
@ -50,8 +50,12 @@ import MVMCore
}
public func validate() {
guard let formRules = formRules else {
return
}
formActionMolecules.forEach { (actionModel) in
if let groupName = actionModel.groupName, let formRule = formRules.first(where: { $0.groupName == groupName }) {
if let groupName = actionModel.groupName,
let formRule = formRules.first(where: { $0.groupName == groupName }) {
validate(groupName, actionModel, formRule.rules)
}
}

View File

@ -21,7 +21,8 @@ public extension TemplateProtocol where Self: MFViewController {
let decoder = JSONDecoder()
let templateModel = try decoder.decode(TemplateModel.self, from: data)
if self.formValidator == nil, let rules = templateModel.formRules {
if self.formValidator == nil {
let rules = templateModel.formRules
self.formValidator = FormValidator(rules)
}
self.templateModel = templateModel