Class: OkonomiUiKit::Components::DropdownButton
- Inherits:
-
ButtonBase
- Object
- OkonomiUiKit::Component
- ButtonBase
- OkonomiUiKit::Components::DropdownButton
- Defined in:
- app/helpers/okonomi_ui_kit/components/dropdown_button.rb
Defined Under Namespace
Classes: DropdownBuilder
Instance Attribute Summary
Attributes inherited from OkonomiUiKit::Component
Instance Method Summary collapse
Methods inherited from ButtonBase
#build_button_class, #extract_icon_config, #render_button_content
Methods inherited from OkonomiUiKit::Component
#combined_styles, config_class?, config_class_name, config_classes, config_namespace, #config_styles_registry, config_styles_registry, deep_merge, #initialize, #internal_styles_registry, internal_styles_registry, #name, parent_styles_registry, register_styles, resolve_config_classes, #style, #styles, #template_path, #theme_name, #tw_merge, #variant_style
Constructor Details
This class inherits a constructor from OkonomiUiKit::Component
Instance Method Details
#render(options = {}, &block) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/helpers/okonomi_ui_kit/components/dropdown_button.rb', line 4 def render( = {}, &block) raise ArgumentError, "DropdownButton requires a block" unless block_given? = .with_indifferent_access variant = (.delete(:variant) || "contained").to_sym color = (.delete(:color) || "default").to_sym = ( variant: variant, color: color, classes: .delete(:class) ) = [ style(:menu, :root), .delete(:menu_class) ].compact.join(" ") dropdown_builder = DropdownBuilder.new(view) view.render( template_path, base_button_classes: , menu_classes: , dropdown_builder: dropdown_builder, component: self, options: , &block ) end |