rules should be optional
This commit is contained in:
parent
7965c4ac6a
commit
c55a9f3faa
@ -13,13 +13,13 @@ import MVMCore
|
|||||||
|
|
||||||
static var defaultGroupName: String = "default"
|
static var defaultGroupName: String = "default"
|
||||||
var extraValidationBlock: (() -> Bool)?
|
var extraValidationBlock: (() -> Bool)?
|
||||||
var formRules: [FormGroupRule]
|
var formRules: [FormGroupRule]?
|
||||||
var delegate: FormHolderProtocol?
|
var delegate: FormHolderProtocol?
|
||||||
var fieldMolecules: [String: FormFieldProtocol] = [:]
|
var fieldMolecules: [String: FormFieldProtocol] = [:]
|
||||||
var formActionMolecules: [FormActionFieldProtocol] = []
|
var formActionMolecules: [FormActionFieldProtocol] = []
|
||||||
var radioButtonsModelByGroup: [String: RadioButtonSelectionHelper] = [:]
|
var radioButtonsModelByGroup: [String: RadioButtonSelectionHelper] = [:]
|
||||||
|
|
||||||
public init(_ formRules: [FormGroupRule]) {
|
public init(_ formRules: [FormGroupRule]?) {
|
||||||
self.formRules = formRules
|
self.formRules = formRules
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -50,8 +50,12 @@ import MVMCore
|
|||||||
}
|
}
|
||||||
|
|
||||||
public func validate() {
|
public func validate() {
|
||||||
|
guard let formRules = formRules else {
|
||||||
|
return
|
||||||
|
}
|
||||||
formActionMolecules.forEach { (actionModel) in
|
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)
|
validate(groupName, actionModel, formRule.rules)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -21,7 +21,8 @@ public extension TemplateProtocol where Self: MFViewController {
|
|||||||
let decoder = JSONDecoder()
|
let decoder = JSONDecoder()
|
||||||
let templateModel = try decoder.decode(TemplateModel.self, from: data)
|
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.formValidator = FormValidator(rules)
|
||||||
}
|
}
|
||||||
self.templateModel = templateModel
|
self.templateModel = templateModel
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user