class UiBibz::Ui::Core::Forms::Selects::DropdownSelectField
Create a DropdownSelectField
This element is an extend of UiBibz::Ui::Core::Forms::Buttons::Button
source : loudev.com/
Attributes¶ ↑
-
content
- Content of element -
options
- Options of element -
html_options
- Html Options of element
Options¶ ↑
You can add HTML attributes using the html_options
. You can pass arguments in options attribute:
-
option_tags
- Array, Object [required] -
multiple
- Boolean -
outline
- Boolean -
theme
- String -
clickable_opt_group
- Boolean -
collapsible_opt_group
- Boolean -
searchable
- Boolean -
select_all_option
- Boolean -
append
- String, Html -
non_selected_text
- String -
open
- Boolean -
theme
- Symbol, defaut::dark
-
prepend
- String, Html -
position
- Symbol (:up
,:right
,:down
,:left
) -
alignment
- Symbol (+:right) -
connect
- Hash-
event
- String -
mode
- String -
target
- Hash-
selector
- String -
data
- Array -
url
- String
-
-
Signatures¶ ↑
UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new(content, options = {}, html_options = {}).render UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new(options = {}, html_options = {}) do content end.render
Examples¶ ↑
UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new('fruits', { option_tags: list_of_fruits, searchable: true }, { class: 'test' }) UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new({ option_tags: list_of_fruits, select_all_option: true }, { class: 'test' }) do 'fruits' end
Helper¶ ↑
dropdown_select_field(content, options = {}, html_options = {})
Private Instance Methods
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 146 def alignment "dropdown-menu-#{@options[:alignment]}" unless @options[:alignment].nil? end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 95 def clickable_opt_group add_html_data('enable_clickable_opt_groups') if options[:clickable_opt_group] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 99 def collapsible_opt_group add_html_data('enable_collapsible_opt_groups') if options[:collapsible_opt_group] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 78 def component_html_classes [open, size, type, button_status, 'multi-select-field'] end
UiBibz::Ui::Core::Component#component_html_data
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 82 def component_html_data super clickable_opt_group collapsible_opt_group searchable non_selected_text select_all_options number_displayed dropdown_menu_classes dropdown_classes n_selected_text end
See UiBibz::Ui::Core::Forms::Buttons::Button.initialize
UiBibz::Ui::Core::Forms::Selects::AbstractSelect#component_html_options
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 69 def component_html_options super.merge({ multiple: options[:multiple], disabled: options[:state] == :disabled, include_blank: false, prompt: false }) end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 129 def dropdown_classes classes = join_classes(position, open) add_html_data('dropdown_classes', value: classes.nil? ? nil : classes.join(' ')) end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 108 def n_selected_text add_html_data('n_selected_text', value: options[:n_selected_text]) if options[:n_selected_text] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 120 def non_selected_text add_html_data('non_selected_text', value: options[:non_selected_text]) if options[:non_selected_text] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 112 def number_displayed add_html_data('number_displayed') if options[:number_displayed] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 142 def open 'show' if @options[:open] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 163 def outline 'outline' if options[:outline] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 134 def position "drop#{@options[:position] || 'down'}" end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 103 def searchable add_html_data('enable_filtering') if options[:searchable] add_html_data('fuzzy_search') if options[:searchable] == :fuzzy end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 116 def select_all_options add_html_data('include_select_all_option') if options[:select_all_options] end
:lg, :sm or :xs
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 155 def size "btn-#{options[:size]}" if options[:size] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 138 def theme 'dropdown-menu-dark' if @options[:theme] end
# File lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb, line 150 def type 'btn-block' if options[:type] == :block end