module SimpleForm::Helpers::Required

def calculate_required

def calculate_required
  if !options[:required].nil?
    options[:required]
  elsif has_validators?
    required_by_validators?
  else
    required_by_default?
  end
end

def required_by_default?

def required_by_default?
  SimpleForm.required_by_default
end

def required_by_validators?

def required_by_validators?
  (attribute_validators + reflection_validators).any? { |v| v.kind == :presence && valid_validator?(v) }
end

def required_class

regardless of the required option.
Do not use has_required? because we want to add the class
def required_class
  required_field? ? :required : :optional
end

def required_field?

def required_field?
  @required
end