Ivandt logo

Advanced validators

Advanced validators

rules

Validates a field based on complex, cross-field conditional rules. Powered by @ivandt/json-rules.

PropertyTypeRequiredDescription
effect'required' | 'checked' | 'not_checked' | 'invalid'YesValidation effect when conditions are met
ruleRuleYesConditional rule definition using @ivandt/json-rules syntax

Effects:

  • 'required': Field must have a value
  • 'checked': Field must be checked (checkbox)
  • 'not_checked': Field must not be checked (checkbox)
  • 'invalid': Field is marked as invalid
{
  type: 'rules',
  effect: 'required',
  rule: {
    all: [
      { field: 'country', operator: 'in', value: ['Australia', 'Canada'] }
    ]
  },
  message: 'State is required for this country'
}

Example - Checkbox Validation:

{
  type: 'rules',
  effect: 'checked',
  rule: {
    all: [
      { field: 'mustCertify', operator: 'in', value: ['Yes'] },
      { field: 'country', operator: 'in', value: ['Australia', 'Canada'] }
    ]
  },
  message: 'Certification required for Australia and Canada',
  severity: 'e'
}

See the json-rules documentation for complete operator reference.

On this page