Class: SdrViewComponents::Forms::BasicSelectFieldComponent

Inherits:
BasicComponent show all
Defined in:
app/components/sdr_view_components/forms/basic_select_field_component.rb

Overview

Component for form select field

Instance Attribute Summary collapse

Attributes inherited from BasicComponent

#args, #field_name, #form

Instance Method Summary collapse

Methods inherited from BaseComponent

#args_for, #merge_actions, #merge_classes

Constructor Details

#initialize(form:, field_name:, options:, prompt: false, classes: [], **args) ⇒ BasicSelectFieldComponent

rubocop:disable Metrics/ParameterLists



7
8
9
10
11
# File 'app/components/sdr_view_components/forms/basic_select_field_component.rb', line 7

def initialize(form:, field_name:, options:, prompt: false, classes: [], **args) # rubocop:disable Metrics/ParameterLists
  @options = options
  @prompt = prompt
  super(form:, field_name:, classes:, **args)
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



13
14
15
# File 'app/components/sdr_view_components/forms/basic_select_field_component.rb', line 13

def options
  @options
end

#promptObject (readonly)

Returns the value of attribute prompt.



13
14
15
# File 'app/components/sdr_view_components/forms/basic_select_field_component.rb', line 13

def prompt
  @prompt
end

Instance Method Details

#callObject



15
16
17
# File 'app/components/sdr_view_components/forms/basic_select_field_component.rb', line 15

def call
  form.select field_name, options, { prompt: }, { class: classes, **args }
end

#classesObject



19
20
21
# File 'app/components/sdr_view_components/forms/basic_select_field_component.rb', line 19

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