Class: Railsboot::Dropdown::ActionComponent
- Inherits:
-
Component
- Object
- Component
- Railsboot::Dropdown::ActionComponent
- Defined in:
- app/components/railsboot/dropdown/action_component.rb
Overview
ViewComponent: renders the action block.
Constant Summary collapse
- TYPES =
Types.
%w[button link].freeze
- DEFAULT_TYPE =
Default type.
"button".freeze
Instance Method Summary collapse
-
#button? ⇒ Boolean
Whether the action renders as a button.
-
#initialize(text: "", type: DEFAULT_TYPE, variant: Railsboot::ButtonComponent::DEFAULT_VARIANT, **html_attributes) ⇒ ActionComponent
constructor
A new instance of ActionComponent.
-
#link? ⇒ Boolean
Whether the action renders as a link.
Constructor Details
#initialize(text: "", type: DEFAULT_TYPE, variant: Railsboot::ButtonComponent::DEFAULT_VARIANT, **html_attributes) ⇒ ActionComponent
Returns a new instance of ActionComponent.
14 15 16 17 18 19 20 21 22 23 24 |
# File 'app/components/railsboot/dropdown/action_component.rb', line 14 def initialize(text: "", type: DEFAULT_TYPE, variant: Railsboot::ButtonComponent::DEFAULT_VARIANT, **html_attributes) @text = text @variant = variant @type = fetch_or_raise(type, TYPES) @html_attributes = html_attributes @html_attributes[:class] = class_names( "dropdown-toggle", html_attributes.delete(:class) ) end |
Instance Method Details
#button? ⇒ Boolean
Whether the action renders as a button.
28 29 30 |
# File 'app/components/railsboot/dropdown/action_component.rb', line 28 def @type == "button" end |
#link? ⇒ Boolean
Whether the action renders as a link.
34 35 36 |
# File 'app/components/railsboot/dropdown/action_component.rb', line 34 def link? @type == "link" end |