Class: SdrViewComponents::Forms::FieldsetComponent

Inherits:
BaseComponent
  • Object
show all
Defined in:
app/components/sdr_view_components/forms/fieldset_component.rb

Overview

Component for rendering a form fieldset.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from BaseComponent

#args_for, #mark_label_required, #merge_actions, #merge_classes

Constructor Details

#initialize(label: nil, hidden_label: false, classes: [], label_classes: [], legend_classes: [], tooltip: nil, mark_required: false, help_text: nil, **options) ⇒ FieldsetComponent

rubocop:disable Metrics/ParameterLists



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 10

def initialize(label: nil, hidden_label: false, classes: [], label_classes: [], legend_classes: [], # rubocop:disable Metrics/ParameterLists
               tooltip: nil, mark_required: false, help_text: nil, **options)
  @label = label
  @hidden_label = hidden_label
  @classes = classes
  @label_classes = label_classes
  @legend_classes = legend_classes
  @tooltip = tooltip
  @options = options
  @mark_required = mark_required
  @help_text = help_text
  super()
end

Instance Attribute Details

#help_textObject (readonly)

Returns the value of attribute help_text.



24
25
26
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 24

def help_text
  @help_text
end

#mark_requiredObject (readonly)

Returns the value of attribute mark_required.



24
25
26
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 24

def mark_required
  @mark_required
end

#optionsObject (readonly)

Returns the value of attribute options.



24
25
26
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 24

def options
  @options
end

#tooltipObject (readonly)

Returns the value of attribute tooltip.



24
25
26
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 24

def tooltip
  @tooltip
end

Instance Method Details

#classesObject



34
35
36
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 34

def classes
  merge_classes('form-fieldset', @classes)
end

#labelObject



30
31
32
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 30

def label
  mark_label_required(label: @label, mark_required:) if @label.present?
end

#label_classesObject



26
27
28
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 26

def label_classes
  merge_classes(@label_classes, @hidden_label ? 'visually-hidden' : 'form-label fw-bold')
end

#legend_classesObject



38
39
40
# File 'app/components/sdr_view_components/forms/fieldset_component.rb', line 38

def legend_classes
  merge_classes(@legend_classes)
end