Module: LocoMotion::Concerns::IconableComponent
- Extended by:
- ActiveSupport::Concern
- Included in:
- Daisy::Actions::ButtonComponent, Daisy::DataDisplay::AvatarComponent, Daisy::DataDisplay::BadgeComponent, Daisy::DataDisplay::StatComponent, Daisy::DataDisplay::TextRotateComponent::ItemComponent, Daisy::Feedback::AlertComponent, Daisy::Navigation::BreadcrumbItemComponent, Daisy::Navigation::DockSectionComponent, Daisy::Navigation::LinkComponent
- Defined in:
- lib/loco_motion/concerns/iconable_component.rb
Overview
The IconableComponent concern provides functionality for components that display icons. It supports both left and right icons and allows for customization of their CSS classes and HTML attributes.
Instance Method Summary collapse
-
#has_icons? ⇒ Boolean
Determines if any icons are present in the component.
-
#left_icon_html ⇒ Hash
Returns the HTML attributes for the left icon.
-
#render_left_icon ⇒ String
(also: #render_icon)
Renders the left icon through the
loco_iconengine. -
#render_right_icon ⇒ String
Renders the right icon.
-
#right_icon_html ⇒ Hash
Returns the HTML attributes for the right icon.
Instance Method Details
#has_icons? ⇒ Boolean
Determines if any icons are present in the component.
147 148 149 |
# File 'lib/loco_motion/concerns/iconable_component.rb', line 147 def has_icons? @left_icon.present? || @right_icon.present? end |
#left_icon_html ⇒ Hash
Returns the HTML attributes for the left icon.
129 130 131 |
# File 'lib/loco_motion/concerns/iconable_component.rb', line 129 def left_icon_html { class: @left_icon_css }.merge(@left_icon_html) end |
#render_left_icon ⇒ String Also known as: render_icon
Renders the left icon through the loco_icon engine.
156 157 158 159 160 |
# File 'lib/loco_motion/concerns/iconable_component.rb', line 156 def render_left_icon return if @left_icon.blank? render_managed_icon(:left) end |
#render_right_icon ⇒ String
Renders the right icon.
168 169 170 171 172 |
# File 'lib/loco_motion/concerns/iconable_component.rb', line 168 def render_right_icon return if @right_icon.blank? render_managed_icon(:right) end |
#right_icon_html ⇒ Hash
Returns the HTML attributes for the right icon.
138 139 140 |
# File 'lib/loco_motion/concerns/iconable_component.rb', line 138 def right_icon_html { class: @right_icon_css }.merge(@right_icon_html) end |