Class: Ariadne::Form::Checkbox::Component

Inherits:
BaseInputComponent show all
Defined in:
app/components/ariadne/form/checkbox/component.rb

Constant Summary

Constants inherited from BaseComponent

BaseComponent::ACCEPT_ANYTHING

Constants included from ViewHelper

ViewHelper::HELPERS

Constants included from AttributesHelper

AttributesHelper::PLURAL_ARIA_ATTRIBUTES, AttributesHelper::PLURAL_DATA_ATTRIBUTES

Instance Attribute Summary

Attributes inherited from BaseInputComponent

#label_attributes

Instance Method Summary collapse

Methods inherited from BaseInputComponent

#add_label_classes, #form_control?, #full_width?, #hidden?, #label_arguments

Methods inherited from BaseComponent

#class_for, #component, component_id, #component_id, component_name, #html_attributes, i18n_scope, #in_turbo_frame, #in_turbo_stream, #options, stimulus_name, #styles, translate, #validate_aria_label!

Methods included from ViewHelper

generate_id

Methods included from AttributesHelper

#aria, #data, #merge_aria, #merge_data, #merge_prefixed_attribute_hashes, #prepend_action, #prepend_controller, #prepend_data_attribute

Methods included from ViewComponent::StyleVariants

#merged_styles

Instance Method Details

#before_renderObject

renders_one :leading_visual, BaseComponent::ACCEPT_ANYTHING renders_one :trailing_visual, BaseComponent::ACCEPT_ANYTHING

Raises:

  • (ArgumentError)


17
18
19
20
# File 'app/components/ariadne/form/checkbox/component.rb', line 17

def before_render
  raise ArgumentError, "Cannot have both `label` and content block" if @label.present? && content.present?
  raise ArgumentError, "Must have either `label` or content block" if @label.blank? && content.blank?
end

#focusable?Boolean

Returns:

  • (Boolean)


41
42
43
# File 'app/components/ariadne/form/checkbox/component.rb', line 41

def focusable?
  true
end

#generic_nameObject



45
46
47
# File 'app/components/ariadne/form/checkbox/component.rb', line 45

def generic_name
  @name.sub(/\[[^\]]*\]$/, "")
end

#typeObject



37
38
39
# File 'app/components/ariadne/form/checkbox/component.rb', line 37

def type
  :check_box
end